[Uml-devel] KDE/kdesdk/umbrello/umbrello

Oliver Kellogg okellogg at users.sourceforge.net
Tue Sep 4 19:03:12 UTC 2007


SVN commit 708395 by okellogg:

slotObjectRemoved(): Break out of loop on calling removeWidget, else
Invalid read of size 4
   at 0x8390311: WidgetBase::getID() const (widgetbase.cpp:70)
   by 0x8371D27: UMLView::slotObjectRemoved(UMLObject*) (umlview.cpp:547)
   by 0x8382792: UMLView::qt_metacall(QMetaObject::Call, int, void**) (umlview.moc:126)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x41727A1: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3125)
   by 0x8357391: UMLDoc::sigObjectRemoved(UMLObject*) (umldoc.moc:151)
   by 0x8350816: UMLDoc::removeUMLObject(UMLObject*) (umldoc.cpp:1180)
   by 0x8363D78: UMLListView::deleteItem(UMLListViewItem*) (umllistview.cpp:2875)
   by 0x83598D4: UMLListView::popupMenuSel(int) (umllistview.cpp:504)
   by 0x836418E: UMLListView::qt_metacall(QMetaObject::Call, int, void**) (umllistview.moc:102)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x41727A1: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3125)
   by 0x5A6E8CE: QMenu::activated(int) (moc_qmenu.cpp:169)
   by 0x5A678B6: QMenuPrivate::_q_actionTriggered() (qmenu.cpp:956)
   by 0x5A6E5A6: QMenu::qt_metacall(QMetaObject::Call, int, void**) (moc_qmenu.cpp:97)
   by 0x47F44F9: KMenu::qt_metacall(QMetaObject::Call, int, void**) (kmenu.moc:68)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x417284A: QMetaObject::activate(QObject*, QMetaObject const*, int, int, void**) (qobject.cpp:3145)
   by 0x56B816D: QAction::triggered(bool) (moc_qaction.cpp:208)
   by 0x56B7945: QAction::activate(QAction::ActionEvent) (qaction.cpp:1087)
   by 0x5A6759E: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:897)
   by 0x5A6B156: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:1974)
   by 0x47F3CBB: KMenu::mouseReleaseEvent(QMouseEvent*) (kmenu.cpp:423)
   by 0x570DC6B: QWidget::event(QEvent*) (qwidget.cpp:6031)
   by 0x5A6B68A: QMenu::event(QEvent*) (qmenu.cpp:2063)
   by 0x56C40DA: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3538)
   by 0x56C2EBE: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:3237)
   by 0x474EBA1: KApplication::notify(QObject*, QEvent*) (kapplication.cpp:300)
   by 0x415DBF8: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:509)
   by 0x4F13148: QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (qcoreapplication.h:189)
   by 0x572370B: QETWidget::translateMouseEvent(_XEvent const*) (qapplication_x11.cpp:3746)
   by 0x57212B6: QApplication::x11ProcessEvent(_XEvent*) (qapplication_x11.cpp:2902)
 Address 0x67F1ED8 is 16 bytes inside a block of size 236 free'd
   at 0x401D567: operator delete(void*) (vg_replace_malloc.c:244)
   by 0x82E8351: FloatingTextWidget::~FloatingTextWidget() (floatingtextwidget.cpp:68)
   by 0x8373B1D: UMLView::removeWidget(UMLWidget*) (umlview.cpp:880)
   by 0x82AA44C: AssociationWidget::cleanup() (associationwidget.cpp:741)
   by 0x83787DF: UMLView::removeAssoc(AssociationWidget*) (umlview.cpp:1851)
   by 0x8378A22: UMLView::removeAssociations(UMLWidget*) (umlview.cpp:1890)
   by 0x8373A0C: UMLView::removeWidget(UMLWidget*) (umlview.cpp:865)
   by 0x8371D5B: UMLView::slotObjectRemoved(UMLObject*) (umlview.cpp:549)
   by 0x8382792: UMLView::qt_metacall(QMetaObject::Call, int, void**) (umlview.moc:126)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x41727A1: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3125)
   by 0x8357391: UMLDoc::sigObjectRemoved(UMLObject*) (umldoc.moc:151)
   by 0x8350816: UMLDoc::removeUMLObject(UMLObject*) (umldoc.cpp:1180)
   by 0x8363D78: UMLListView::deleteItem(UMLListViewItem*) (umllistview.cpp:2875)
   by 0x83598D4: UMLListView::popupMenuSel(int) (umllistview.cpp:504)
   by 0x836418E: UMLListView::qt_metacall(QMetaObject::Call, int, void**) (umllistview.moc:102)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x41727A1: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3125)
   by 0x5A6E8CE: QMenu::activated(int) (moc_qmenu.cpp:169)
   by 0x5A678B6: QMenuPrivate::_q_actionTriggered() (qmenu.cpp:956)
   by 0x5A6E5A6: QMenu::qt_metacall(QMetaObject::Call, int, void**) (moc_qmenu.cpp:97)
   by 0x47F44F9: KMenu::qt_metacall(QMetaObject::Call, int, void**) (kmenu.moc:68)
   by 0x4172587: QMetaObject::activate(QObject*, int, int, void**) (qobject.cpp:3063)
   by 0x417284A: QMetaObject::activate(QObject*, QMetaObject const*, int, int, void**) (qobject.cpp:3145)
   by 0x56B816D: QAction::triggered(bool) (moc_qaction.cpp:208)
   by 0x56B7945: QAction::activate(QAction::ActionEvent) (qaction.cpp:1087)
   by 0x5A6759E: QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) (qmenu.cpp:897)
   by 0x5A6B156: QMenu::mouseReleaseEvent(QMouseEvent*) (qmenu.cpp:1974)
   by 0x47F3CBB: KMenu::mouseReleaseEvent(QMouseEvent*) (kmenu.cpp:423)
   by 0x570DC6B: QWidget::event(QEvent*) (qwidget.cpp:6031)
   by 0x5A6B68A: QMenu::event(QEvent*) (qmenu.cpp:2063)
   by 0x56C40DA: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:3538)


 M  +1 -0      umlview.cpp  


--- trunk/KDE/kdesdk/umbrello/umbrello/umlview.cpp #708394:708395
@@ -547,6 +547,7 @@
         if(obj -> getID() != id)
             continue;
         removeWidget(obj);
+        break;
     }
 }
 




More information about the umbrello-devel mailing list