Application: labplot2 (2.0.0.beta2) KDE Platform Version: 4.10.5 "release 1" Qt Version: 4.8.4 Operating System: Linux 3.7.10-1.24-desktop x86_64 Distribution: "openSUSE 12.3 (x86_64)" -- Information about the crash: The program crash on exit, no matter if the work was saved or not. The crash can be reproduced every time. -- Backtrace: Application: LabPlot2 (labplot2), signal: Aborted Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f2033855780 (LWP 2519))] Thread 2 (Thread 0x7f202d10c700 (LWP 2630)): #0 0x00007f203ab814ed in poll () from /lib64/libc.so.6 #1 0x00007f2036e79aa4 in ?? () from /usr/lib64/libglib-2.0.so.0 #2 0x00007f2036e79bc4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #3 0x00007f203c50f2e6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #4 0x00007f203c4dfadf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #5 0x00007f203c4dfd68 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #6 0x00007f203c3e20f0 in QThread::exec() () from /usr/lib64/libQtCore.so.4 #7 0x00007f203c4c029f in ?? () from /usr/lib64/libQtCore.so.4 #8 0x00007f203c3e50cc in ?? () from /usr/lib64/libQtCore.so.4 #9 0x00007f2038c0de0f in start_thread () from /lib64/libpthread.so.0 #10 0x00007f203ab8a44d in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7f2033855780 (LWP 2519)): [KCrash Handler] #5 0x00007f203aad63d5 in raise () from /lib64/libc.so.6 #6 0x00007f203aad7858 in abort () from /lib64/libc.so.6 #7 0x00007f203ab1644b in __libc_message () from /lib64/libc.so.6 #8 0x00007f203ab1bfc6 in malloc_printerr () from /lib64/libc.so.6 #9 0x00007f203ab1cd43 in _int_free () from /lib64/libc.so.6 #10 0x00007f203c4f733c in QObject::~QObject() () from /usr/lib64/libQtCore.so.4 #11 0x00007f203b899129 in QHBoxLayout::~QHBoxLayout() () from /usr/lib64/libQtGui.so.4 #12 0x00007f203b8d428f in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #13 0x00007f203b8d4719 in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #14 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #15 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #16 0x00007f203bcde749 in QStackedWidget::~QStackedWidget() () from /usr/lib64/libQtGui.so.4 #17 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #18 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #19 0x00007f203bce9da9 in QTabWidget::~QTabWidget() () from /usr/lib64/libQtGui.so.4 #20 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #21 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #22 0x000000000048c858 in CartesianPlotDock::~CartesianPlotDock() () #23 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #24 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #25 0x00007f203bcde749 in QStackedWidget::~QStackedWidget() () from /usr/lib64/libQtGui.so.4 #26 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #27 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #28 0x00007f203bc70319 in QDockWidget::~QDockWidget() () from /usr/lib64/libQtGui.so.4 #29 0x00007f203c4f34c2 in QObjectPrivate::deleteChildren() () from /usr/lib64/libQtCore.so.4 #30 0x00007f203b8d43cc in QWidget::~QWidget() () from /usr/lib64/libQtGui.so.4 #31 0x00007f203db0c2f7 in KMainWindow::~KMainWindow() () from /usr/lib64/libkdeui.so.5 #32 0x000000000049265f in MainWin::~MainWin() () #33 0x0000000000492729 in MainWin::~MainWin() () #34 0x00007f203c4f57a8 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4 #35 0x00007f203b8d988a in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4 #36 0x00007f203bc9e4fb in QMainWindow::event(QEvent*) () from /usr/lib64/libQtGui.so.4 #37 0x00007f203db47748 in KXmlGuiWindow::event(QEvent*) () from /usr/lib64/libkdeui.so.5 #38 0x00007f203b88a86c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4 #39 0x00007f203b88eceb in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4 #40 0x00007f203da557f6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5 #41 0x00007f203c4e0d8e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4 #42 0x00007f203c4e46f1 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4 #43 0x00007f203c50f133 in ?? () from /usr/lib64/libQtCore.so.4 #44 0x00007f2036e797d5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #45 0x00007f2036e79b08 in ?? () from /usr/lib64/libglib-2.0.so.0 #46 0x00007f2036e79bc4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #47 0x00007f203c50f2c6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #48 0x00007f203b92ac1e in ?? () from /usr/lib64/libQtGui.so.4 #49 0x00007f203c4dfadf in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #50 0x00007f203c4dfd68 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4 #51 0x00007f203c4e4a08 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4 #52 0x000000000048029b in main () Reported using DrKonqi
Note: even if the report says version 2.0 beta, the report is for LabPlot 2.0 final (the report system do not offer version 2 final as a choice)
(In reply to comment #1) > Note: even if the report says version 2.0 beta, the report is for LabPlot > 2.0 final (the report system do not offer version 2 final as a choice) Dr.Konqi (usually) wouldn't lie. If the report says the version is '2.0.0-beta2', then it is . Maybe the maintainer forgets to bump version in the source code before making the final release.
We forgot to adjust the version string in one place. So, the final release (v.2.0.0) is currently presented as 2.0.0beta2. With the final version I don't observe any crashes on openSUSE 12.1 and 13.1. Are you sure you've downloaded the final release?
I got this version from Education repository, reported as version 2.0.0-2.1. A couple of days ago, that repo offered 2.0.0beta2. I changed version to the one offered by Science repo and it seems the crash disappeared (version 2.0.0-1.1. I'll do more testing later today and report back.
I did some more testing. If I start LabPlot → New → New spreadsheet → type some data → New Worksheet → New xy-plot → box plot, two axes → new xy-curve → Select the data ranges → Save the document (not saving is the same) → close the window (File → Quit or with the cross on the window decoration) → Accept → Crash. Closing the document first and then quitting gives the same problem. But this only happens with NEW documents: opening an existing document, editing it and saving does NOT give the crash on exit.
Thank you a lot for testing and giving LabPlot a try. I still cannot reproduce the crash. Do you always get the same call stack as reported in you first post?
(In reply to comment #6) > Thank you a lot for testing and giving LabPlot a try. > I still cannot reproduce the crash. Do you always get the same call stack as > reported in you first post? Yes. I mean, the hexadecimal codes on each lines differ a bit ("#0 0x00007f076e7404ed in poll () from /lib64/libc.so.6" instead of "#0 0x00007f203ab814ed in poll () from /lib64/libc.so.6", for example), but all the libraries and calls are the same and are presented on the same order.
Hi, i can reproduce the crash on openSUSE 12.2. I see a "*** glibc detected *** labplot2: free(): invalid next size (normal): 0x0000000002b759a0 ***" so something seems to be wrong with the memory management.
valgrind gives the following errors. Maybe it helps finding the bug. ==31625== Invalid write of size 4 ==31625== at 0x754D564: QGridLayout::setHorizontalSpacing(int) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x4CC62E: CartesianPlotDock::CartesianPlotDock(QWidget*) (CartesianPlotDock.cpp:82) ==31625== by 0x49A5B7: GuiObserver::selectedAspectsChanged(QList<AbstractAspect*>&) (GuiObserver.cpp:168) ==31625== by 0x4974AA: GuiObserver::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_GuiObserver.cpp:52) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x48DCA6: ProjectExplorer::selectedAspectsChanged(QList<AbstractAspect*>&) (moc_ProjectExplorer.cpp:161) ==31625== by 0x5CDF9B: ProjectExplorer::selectionChanged(QItemSelection const&, QItemSelection const&) (ProjectExplorer.cpp:473) ==31625== by 0x48DAC6: ProjectExplorer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_ProjectExplorer.cpp:102) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x7A86C16: QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7A8BD8C: QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7A8CA7B: QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== Address 0xf8e788c is 4 bytes after a block of size 280 alloc'd ==31625== at 0x4C2A6E7: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==31625== by 0x753938A: QBoxLayout::QBoxLayout(QBoxLayout::Direction, QWidget*) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7539ECD: QHBoxLayout::QHBoxLayout(QWidget*) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x4CC565: CartesianPlotDock::CartesianPlotDock(QWidget*) (CartesianPlotDock.cpp:71) ==31625== by 0x49A5B7: GuiObserver::selectedAspectsChanged(QList<AbstractAspect*>&) (GuiObserver.cpp:168) ==31625== by 0x4974AA: GuiObserver::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_GuiObserver.cpp:52) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x48DCA6: ProjectExplorer::selectedAspectsChanged(QList<AbstractAspect*>&) (moc_ProjectExplorer.cpp:161) ==31625== by 0x5CDF9B: ProjectExplorer::selectionChanged(QItemSelection const&, QItemSelection const&) (ProjectExplorer.cpp:473) ==31625== by 0x48DAC6: ProjectExplorer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_ProjectExplorer.cpp:102) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x7A86C16: QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== ==31625== Invalid write of size 4 ==31625== at 0x754D5A4: QGridLayout::setVerticalSpacing(int) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x4CC63F: CartesianPlotDock::CartesianPlotDock(QWidget*) (CartesianPlotDock.cpp:83) ==31625== by 0x49A5B7: GuiObserver::selectedAspectsChanged(QList<AbstractAspect*>&) (GuiObserver.cpp:168) ==31625== by 0x4974AA: GuiObserver::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_GuiObserver.cpp:52) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x48DCA6: ProjectExplorer::selectedAspectsChanged(QList<AbstractAspect*>&) (moc_ProjectExplorer.cpp:161) ==31625== by 0x5CDF9B: ProjectExplorer::selectionChanged(QItemSelection const&, QItemSelection const&) (ProjectExplorer.cpp:473) ==31625== by 0x48DAC6: ProjectExplorer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_ProjectExplorer.cpp:102) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x7A86C16: QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7A8BD8C: QItemSelectionModel::emitSelectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7A8CA7B: QItemSelectionModel::select(QItemSelection const&, QFlags<QItemSelectionModel::SelectionFlag>) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== Address 0xf8e7890 is 8 bytes after a block of size 280 alloc'd ==31625== at 0x4C2A6E7: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==31625== by 0x753938A: QBoxLayout::QBoxLayout(QBoxLayout::Direction, QWidget*) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x7539ECD: QHBoxLayout::QHBoxLayout(QWidget*) (in /usr/lib64/libQtGui.so.4.8.1) ==31625== by 0x4CC565: CartesianPlotDock::CartesianPlotDock(QWidget*) (CartesianPlotDock.cpp:71) ==31625== by 0x49A5B7: GuiObserver::selectedAspectsChanged(QList<AbstractAspect*>&) (GuiObserver.cpp:168) ==31625== by 0x4974AA: GuiObserver::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_GuiObserver.cpp:52) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x48DCA6: ProjectExplorer::selectedAspectsChanged(QList<AbstractAspect*>&) (moc_ProjectExplorer.cpp:161) ==31625== by 0x5CDF9B: ProjectExplorer::selectionChanged(QItemSelection const&, QItemSelection const&) (ProjectExplorer.cpp:473) ==31625== by 0x48DAC6: ProjectExplorer::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_ProjectExplorer.cpp:102) ==31625== by 0x6DF1F5E: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (in /usr/lib64/libQtCore.so.4.8.1) ==31625== by 0x7A86C16: QItemSelectionModel::selectionChanged(QItemSelection const&, QItemSelection const&) (in /usr/lib64/libQtGui.so.4.8.1) ==31625==
Hallo Stefan, ich habe den Bug gefunden, korrigiere ihn gleich. Warum hat valgring bei mir nix gemeldet?... Viele Grüße ich
I commited a fix for this problem. Can you checkout the current code from our sourceforge repository as described here http://labplot.sourceforge.net/download/, compile and test it again?
Hi, it is fixed for me.
Fixed in v2.0.1