Bug 187315 - crash in UMLCanvasObject::removeAllChildObjects when closing application
Summary: crash in UMLCanvasObject::removeAllChildObjects when closing application
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
: 188736 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-03-16 16:35 UTC by Marcus Better
Modified: 2009-04-04 20:43 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcus Better 2009-03-16 16:35:16 UTC
Version:           2.2.1 (using 4.2.1 (KDE 4.2.1), Debian packages)
Compiler:          cc
OS:                Linux (x86_64) release 2.6.28.7-melech

Umbrello crashes whenever I close it while editing a particular document, which I cannot attach unfortunately.

Program: Umbrello UML-modellering (umbrello), signal SIGSEGV
0x00007f0d6a17b8a0 in __nanosleep_nocancel () from /lib/libc.so.6
Current language:  auto; currently c

Thread 1 (Thread 0x7f0d6e190750 (LWP 22377)):
[KCrash Handler]
#5  0x0000000001642248 in ?? ()
#6  0x0000000000c1eb1d in UMLCanvasObject::removeAllChildObjects (this=0x1634260) at ../../../umbrello/umbrello/umlcanvasobject.cpp:138
#7  0x0000000000bed360 in UMLPackage::removeAllObjects (this=0x1641960) at ../../../umbrello/umbrello/package.cpp:165
#8  0x0000000000bed3ba in UMLPackage::removeAllObjects (this=0x1127f80) at ../../../umbrello/umbrello/package.cpp:171
#9  0x0000000000c28775 in UMLDoc::closeDocument (this=0x1122e30) at ../../../umbrello/umbrello/umldoc.cpp:296
#10 0x0000000000c14e35 in UMLApp::queryExit (this=0x1120ab0) at ../../../umbrello/umbrello/uml.cpp:878
#11 0x00007f0d6cd86d5c in KMainWindow::closeEvent (this=0x1120ab0, e=0x7fff762cb440) at ../../kdeui/widgets/kmainwindow.cpp:598
#12 0x00007f0d6b77412d in QWidget::event (this=0x1120ab0, event=0x7fff762cb440) at kernel/qwidget.cpp:7666
#13 0x00007f0d6bb2772b in QMainWindow::event (this=0x1120ab0, event=0x7fff762cb440) at widgets/qmainwindow.cpp:1396
#14 0x00007f0d6cdc2c08 in KXmlGuiWindow::event (this=0x1641960, ev=0xb) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:131
#15 0x00007f0d6b7235bd in QApplicationPrivate::notify_helper (this=0xfcd680, receiver=0x1120ab0, e=0x7fff762cb440) at kernel/qapplication.cpp:4084
#16 0x00007f0d6b72b7aa in QApplication::notify (this=0x7fff762cc0c0, receiver=0x1120ab0, e=0x7fff762cb440) at kernel/qapplication.cpp:4049
#17 0x00007f0d6ccb911b in KApplication::notify (this=0x7fff762cc0c0, receiver=0x1120ab0, event=0x7fff762cb440) at ../../kdeui/kernel/kapplication.cpp:307
#18 0x00007f0d6b255c4c in QCoreApplication::notifyInternal (this=0x7fff762cc0c0, receiver=0x1120ab0, event=0x7fff762cb440) at kernel/qcoreapplication.cpp:602
#19 0x00007f0d6b77921b in QWidgetPrivate::close_helper (this=0x1120e50, mode=QWidgetPrivate::CloseWithSpontaneousEvent) at kernel/qwidget.cpp:7086
#20 0x00007f0d6b7804f5 in QApplication::x11ClientMessage (this=<value optimized out>, w=0x1120ab0, event=0x7fff762cbd00, passive_only=16) at kernel/qapplication_x11.cpp:5307
#21 0x00007f0d6b793485 in QApplication::x11ProcessEvent (this=0x7fff762cc0c0, event=0x7fff762cbd00) at kernel/qapplication_x11.cpp:3675
#22 0x00007f0d6b7bbee4 in x11EventSourceDispatch (s=0xfd0e10, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#23 0x00007f0d66a97afb in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#24 0x00007f0d66a9b2bd in ?? () from /usr/lib/libglib-2.0.so.0
#25 0x00007f0d66a9b47b in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#26 0x00007f0d6b27f29f in QEventDispatcherGlib::processEvents (this=0xfca2c0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:323
#27 0x00007f0d6b7bb68f in QGuiEventDispatcherGlib::processEvents (this=0x1641960, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#28 0x00007f0d6b2544f2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1982644208}) at kernel/qeventloop.cpp:149
#29 0x00007f0d6b2548bd in QEventLoop::exec (this=0x7fff762cc030, flags={i = 1982644288}) at kernel/qeventloop.cpp:200
#30 0x00007f0d6b256b84 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:880
#31 0x0000000000bc8c75 in main (argc=3, argv=0x7fff762cc4e8) at ../../../umbrello/umbrello/main.cpp:110
Comment 1 Ralf Habacker 2009-03-16 20:50:10 UTC
#6  0x0000000000c1eb1d in UMLCanvasObject::removeAllChildObjects
(this=0x1634260) at ../../../umbrello/umbrello/umlcanvasobject.cpp:138

is probably the closing } of the method as shown belo

131 void UMLCanvasObject::removeAllChildObjects()
132 {
134    removeAllAssociationEnds();
135    while ( !m_List.isEmpty() ) {
136        delete m_List.takeFirst();
137    }
138 }

- stack corruption problem ?  
the stack frame #5 indicates this too. 

#5  0x0000000001642248 in ?? ()

just a guess
Comment 2 Andi Fischer 2009-04-04 04:09:05 UTC
Commit 948599 should fix this bug.
Comment 3 Andi Fischer 2009-04-04 20:42:40 UTC
*** Bug 188736 has been marked as a duplicate of this bug. ***