Application that crashed: kmymoney Version of the application: 3.95.0-svn20090511 KDE Version: 4.3.4 (KDE 4.3.4) Qt Version: 4.5.3 Operating System: Linux 2.6.31-gentoo-r6 x86_64 What I was doing when the application crashed: Steps to reproduce: 1) Open some (empty) report with a pie chart (I used Charts->Investment Holdings Pie) 2) Go to Configure->Chart and Change chart type from Pie to Ring 3) See kmymoney crash with the backtrace below -- Backtrace: Application: KMyMoney (kmymoney), signal: Segmentation fault The current source language is "auto; currently c". [KCrash Handler] #5 0x00007f7d80498401 in KDChart::RingDiagram::valueTotals (this=<value optimized out>) at /home/oliver/kmymoney-3.95.0/libkdchart/src/KDChartRingDiagram.cpp:138 #6 0x00007f7d80436c84 in KDChart::PolarCoordinatePlane::layoutDiagrams (this=0x4508c80) at /home/oliver/kmymoney-3.95.0/libkdchart/src/KDChartPolarCoordinatePlane.cpp:192 #7 0x00007f7d80430726 in KDChart::AbstractCoordinatePlane::addDiagram (this=0x4508c80, diagram=0x44feb90) at /home/oliver/kmymoney-3.95.0/libkdchart/src/KDChartAbstractCoordinatePlane.cpp:81 #8 0x00007f7d804370e9 in KDChart::PolarCoordinatePlane::addDiagram (this=0x44feb90, diagram=0x1) at /home/oliver/kmymoney-3.95.0/libkdchart/src/KDChartPolarCoordinatePlane.cpp:133 #9 0x00007f7d804302c9 in KDChart::AbstractCoordinatePlane::replaceDiagram (this=0x4508c80, diagram=0x44feb90, oldDiagram_=0x21309e0) at /home/oliver/kmymoney-3.95.0/libkdchart/src/KDChartAbstractCoordinatePlane.cpp:98 #10 0x000000000055df7b in reports::KReportChartView::drawPivotChart (this=0x44faac0, grid=<value optimized out>, config=<value optimized out>, numberColumns=<value optimized out>, columnHeadings=..., rowTypeList=..., columnTypeHeaderList=...) at /home/oliver/kmymoney-3.95.0/kmymoney/reports/kreportchartview.cpp:152 #11 0x0000000000569a5a in reports::PivotTable::drawChart (this=0x0, chartView=...) at /home/oliver/kmymoney-3.95.0/kmymoney/reports/pivottable.cpp:1940 #12 0x00000000004e5a5d in KReportsView::KReportTab::updateReport (this=0x2fa0220) at /home/oliver/kmymoney-3.95.0/kmymoney/views/kreportsview.cpp:221 #13 0x00000000004e5fe2 in KReportsView::KReportTab::showEvent (this=0x44feb90, event=<value optimized out>) at /home/oliver/kmymoney-3.95.0/kmymoney/views/kreportsview.cpp:188 #14 0x00007f7d7ad7a839 in QWidget::event (this=0x2fa0220, event=0x7fffc03f4390) at kernel/qwidget.cpp:7753 #15 0x00007f7d7ad2c34c in QApplicationPrivate::notify_helper (this=0x1f0b680, receiver=0x2fa0220, e=0x7fffc03f4390) at kernel/qapplication.cpp:4065 #16 0x00007f7d7ad3211f in QApplication::notify (this=0x1f0b540, receiver=0x2fa0220, e=0x7fffc03f4390) at kernel/qapplication.cpp:4030 #17 0x00007f7d7ef92236 in KApplication::notify (this=0x1f0b540, receiver=0x2fa0220, event=0x7fffc03f4390) at /tmp/portage/kde-base/kdelibs-4.3.4/work/kdelibs-4.3.4/kdeui/kernel/kapplication.cpp:302 #18 0x00007f7d7b79298b in QCoreApplication::notifyInternal (this=0x1f0b540, receiver=0x2fa0220, event=0x7fffc03f4390) at kernel/qcoreapplication.cpp:606 #19 0x00007f7d7ad79323 in QCoreApplication::sendEvent (this=0x4d93490) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213 #20 QWidgetPrivate::show_helper (this=0x4d93490) at kernel/qwidget.cpp:6761 #21 0x00007f7d7ad7b1ba in QWidget::setVisible (this=0x2fa0220, visible=<value optimized out>) at kernel/qwidget.cpp:6980 #22 0x00007f7d7ad6097d in QWidget::show (this=0x24547f0, index=3) at ../../include/QtGui/../../src/gui/kernel/qwidget.h:473 #23 QStackedLayout::setCurrentIndex (this=0x24547f0, index=3) at kernel/qstackedlayout.cpp:313 #24 0x00007f7d7b0fb9f4 in QTabWidgetPrivate::_q_showTab (this=0x244d440, index=3) at widgets/qtabwidget.cpp:723 #25 0x00007f7d7b0fbcb0 in QTabWidget::qt_metacall (this=0x245e530, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffc03f4690) at .moc/release-shared/moc_qtabwidget.cpp:136 #26 0x00007f7d7f0853a5 in KTabWidget::qt_metacall (this=0x44feb90, _c=QMetaObject::ReadProperty, _id=34802144, _a=0x6) at /tmp/portage/kde-base/kdelibs-4.3.4/work/kdelibs-4.3.4_build/kdeui/ktabwidget.moc:124 #27 0x00007f7d7b7a4374 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=0x6) at kernel/qobject.cpp:3101 #28 0x00007f7d7b0edb6e in QTabBar::currentChanged (this=0x44feb90, _t1=3) at .moc/release-shared/moc_qtabbar.cpp:201 #29 0x00000000004e343f in KReportsView::slotConfigure (this=0x2462b00) at /home/oliver/kmymoney-3.95.0/kmymoney/views/kreportsview.cpp:654 #30 0x00000000004efade in KReportsView::qt_metacall (this=0x2462b00, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffc03f4ee0) at /home/oliver/kmymoney-3.95.0/build/kmymoney/views/kreportsview.moc:109 #31 0x00007f7d7b7a4374 in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=0x6) at kernel/qobject.cpp:3101 #32 0x00007f7d7b2b8de7 in QAbstractButton::clicked (this=0x44feb90, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:200 #33 0x00007f7d7b04f99b in QAbstractButtonPrivate::emitClicked (this=0x2de5ee0) at widgets/qabstractbutton.cpp:543 #34 0x00007f7d7b050882 in QAbstractButtonPrivate::click (this=0x2de5ee0) at widgets/qabstractbutton.cpp:536 #35 0x00007f7d7b050aa5 in QAbstractButton::mouseReleaseEvent (this=0x42f3770, e=0x7fffc03f57a0) at widgets/qabstractbutton.cpp:1115 #36 0x00007f7d7ad7aa09 in QWidget::event (this=0x42f3770, event=0x7fffc03f57a0) at kernel/qwidget.cpp:7554 #37 0x00007f7d7ad2c34c in QApplicationPrivate::notify_helper (this=0x1f0b680, receiver=0x42f3770, e=0x7fffc03f57a0) at kernel/qapplication.cpp:4065 #38 0x00007f7d7ad31fae in QApplication::notify (this=<value optimized out>, receiver=0x42f3770, e=0x7fffc03f57a0) at kernel/qapplication.cpp:3767 #39 0x00007f7d7ef92236 in KApplication::notify (this=0x1f0b540, receiver=0x42f3770, event=0x7fffc03f57a0) at /tmp/portage/kde-base/kdelibs-4.3.4/work/kdelibs-4.3.4/kdeui/kernel/kapplication.cpp:302 #40 0x00007f7d7b79298b in QCoreApplication::notifyInternal (this=0x1f0b540, receiver=0x42f3770, event=0x7fffc03f57a0) at kernel/qcoreapplication.cpp:606 #41 0x00007f7d7ad33a07 in QCoreApplication::sendSpontaneousEvent (receiver=<value optimized out>, event=0x7fffc03f57a0, alienWidget=0x42f3770, nativeWidget=0x2462b00, buttonDown=0x44feb90, lastMouseReceiver=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216 #42 QApplicationPrivate::sendMouseEvent (receiver=<value optimized out>, event=0x7fffc03f57a0, alienWidget=0x42f3770, nativeWidget=0x2462b00, buttonDown=0x44feb90, lastMouseReceiver=<value optimized out>) at kernel/qapplication.cpp:2924 #43 0x00007f7d7ad8efe4 in QETWidget::translateMouseEvent (this=0x2462b00, event=<value optimized out>) at kernel/qapplication_x11.cpp:4411 #44 0x00007f7d7ad8ddf0 in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fffc03f7120) at kernel/qapplication_x11.cpp:3552 #45 0x00007f7d7adb2a84 in x11EventSourceDispatch (s=<value optimized out>, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146 #46 0x00007f7d7810a20d in g_main_dispatch (context=0x1f0e120) at gmain.c:1824 #47 IA__g_main_context_dispatch (context=0x1f0e120) at gmain.c:2377 #48 0x00007f7d7810da58 in g_main_context_iterate (context=0x1f0e120, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2455 #49 0x00007f7d7810dba0 in IA__g_main_context_iteration (context=0x1f0e120, may_block=1) at gmain.c:2518 #50 0x00007f7d7b7b78d6 in QEventDispatcherGlib::processEvents (this=0x1ee9990, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:327 #51 0x00007f7d7adb235e in QGuiEventDispatcherGlib::processEvents (this=0x44feb90, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202 #52 0x00007f7d7b791372 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149 #53 0x00007f7d7b79150d in QEventLoop::exec (this=0x7fffc03f7440, flags=) at kernel/qeventloop.cpp:197 #54 0x00007f7d7b793349 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888 #55 0x000000000045a0f3 in main (argc=<value optimized out>, argv=<value optimized out>) at /home/oliver/kmymoney-3.95.0/kmymoney/main.cpp:275 Reported using DrKonqi
I could reproduce this with kmymoney4-3.95.0-42.pm.44.1 installed from packman some time ago. I cannot reproduce this with current SVN 1079370. Maybe the update of libkdchart fixed this?
Yes and no. I just tried a current svn snapshot and found that changing from Pie chart to Ring chart indeed does not crash any longer. But after playing with it a little bit more it seems that other combinations still crash with similar backtraces. As a matter of fact, in my current svn checkout changing from Pie chart to anything (but Ring chart) crashes kmymoney on most reports.
I can reproduce a problem: current SVN built with debugfull asserts when doing the following: - open an empty file - choose reports->charts->networth forecast - change chart type to pie - change chart type to stacked bar I will add a patch that fixes this for me.
Created attachment 40208 [details] fix assertion when changing chart type
I can confirm that the above patch seems to solve all my crashing issues with changing the chart types.
SVN commit 1079798 by asoliverez: Fixed crash when modifying the chart type. Patch contributed by Peter Pointner and modified to make sure settings are applied in all cases. Anyway, charts seem to be a work in progress. So expect more bugs and more fixes. BUG:220941 M +14 -8 kreportchartview.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1079798