Application: umbrello (2.16.99-1088e8b) KDE Platform Version: 4.14.6 Qt Version: 4.8.6 Operating System: Linux 3.19.5-200.fc21.x86_64 x86_64 Distribution (Platform): Fedora RPMs -- Information about the crash: - What I was doing when the application crashed: Steps to create the abort: 1. Start Umbrello 2. Create a Test Class 3. Add one attribute (public) 4. Close application 5. Chose to discard changes. This is when the abort took place. I did it twice in succession. I did not test any other combination of actions. - Custom settings of the application: I use the Umbrello (updated version) from a git repo of Umbrello in stead of the Fedora standard version. The crash can be reproduced every time. -- Backtrace: Application: Umbrello UML Modeller (umbrello), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f1601ba7880 (LWP 6421))] Thread 2 (Thread 0x7f15da550700 (LWP 6422)): #0 0x00007f15fd345c8d in poll () at /lib64/libc.so.6 #1 0x00007f15f8a8fb34 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #2 0x00007f15f8a8fec2 in g_main_loop_run () at /lib64/libglib-2.0.so.0 #3 0x00007f15eb76ce66 in gdbus_shared_thread_func () at /lib64/libgio-2.0.so.0 #4 0x00007f15f8ab63d5 in g_thread_proxy () at /lib64/libglib-2.0.so.0 #5 0x00007f15fde4352a in start_thread () at /lib64/libpthread.so.0 #6 0x00007f15fd35122d in clone () at /lib64/libc.so.6 Thread 1 (Thread 0x7f1601ba7880 (LWP 6421)): [KCrash Handler] #6 0x00007f15ff568c94 in QAbstractScrollArea::horizontalScrollBar() const () at /lib64/libQtGui.so.4 #7 0x00000000005f32cd in BirdView::slotViewChanged() (this=0x14ded60) at /home/gbonnema/projects/cpp/tools-projects/umbrello/master/umbrello/birdview.cpp:120 #8 0x00007f15fe1f73d1 in QObject::event(QEvent*) () at /lib64/libQtCore.so.4 #9 0x00007f15ff126633 in QWidget::event(QEvent*) () at /lib64/libQtGui.so.4 #10 0x00007f15ff4e649e in QFrame::event(QEvent*) () at /lib64/libQtGui.so.4 #11 0x00007f15ff0d2efc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQtGui.so.4 #12 0x00007f15ff0d9958 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQtGui.so.4 #13 0x00007f15ffe47c6a in KApplication::notify(QObject*, QEvent*) () at /lib64/libkdeui.so.5 #14 0x00007f15fe1de16d in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /lib64/libQtCore.so.4 #15 0x00007f15fe1e1431 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQtCore.so.4 #16 0x00007f15fe20d32e in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQtCore.so.4 #17 0x00007f15f8a8f7fb in g_main_context_dispatch () at /lib64/libglib-2.0.so.0 #18 0x00007f15f8a8fb98 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #19 0x00007f15f8a8fc4c in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #20 0x00007f15fe20d49e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #21 0x00007f15ff176176 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtGui.so.4 #22 0x00007f15fe1dccc1 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #23 0x00007f15fe1dd025 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #24 0x00007f15fe1e2709 in QCoreApplication::exec() () at /lib64/libQtCore.so.4 #25 0x0000000000440697 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/gbonnema/projects/cpp/tools-projects/umbrello/master/umbrello/main.cpp:140 Reported using DrKonqi
(In reply to Guus from comment #0) > This is when the abort took place. I did it twice in succession. I did not > test any other combination of actions. > [KCrash Handler] > #6 0x00007f15ff568c94 in QAbstractScrollArea::horizontalScrollBar() const > () at /lib64/libQtGui.so.4 > #7 0x00000000005f32cd in BirdView::slotViewChanged() (this=0x14ded60) at In void BirdView::slotDockSizeChanged(const QSize& size) { ... #if 1 DEBUG(DBG_SRC) << "setting the size to the scene: " << itemsRect << " / to the frame: " << frameRect << " / scaleW: " << scaleW << " / scaleH: " << scaleH << " / scale: " << scale; #endif the following line has been added recently, which causes the crash. QTimer::singleShot(0, this, SLOT(slotViewChanged())); } commenting out should fix the crash.
Git commit 3771e0d71d6689f0c7ed7ab44bc0a55c4c8a6e07 by Ralf Habacker. Committed on 07/05/2015 at 07:29. Pushed by habacker into branch 'master'. Fix 'Umbrello crashes when closing the application'. Make sure that bird view do not access a destroyed view. M +17 -0 umbrello/birdview.cpp M +1 -0 umbrello/birdview.h http://commits.kde.org/umbrello/3771e0d71d6689f0c7ed7ab44bc0a55c4c8a6e07