Version: 2.3.1 (using KDE 4.3.1) OS: Linux Installed from: Debian testing/unstable Packages a) When I click "refactor" in a class with attributes, Umbrello crashes. b) I receive another crash if I do this: 1) Select all 2) Copy (Control + C) 3) File -> New 4) Paste (Control + V) 5) Right click in a class to add some attribute -> Umbrello crashes. If, after "4", save the new file, and close it, and opens it with Umbrello again, the file will appear without the relationship arrows, and the bug described in "5" does not happens anymore. I will attach here the file where the error occurs. To see them, try refactor the class "UsersController".
Created attachment 37385 [details] The file where the crashes occurs Try refactor "UserController" class. To see the other crash, repeat "b" case.
also with git master
The problem is a heap overflow caused by a recursive loop as shown below: .. 10059 RefactoringAssistant::addClassifier refactoringassistant.cpp 695 0x48c4f2 10060 RefactoringAssistant::addClassifier refactoringassistant.cpp 695 0x48c4f2 10061 RefactoringAssistant::addClassifier refactoringassistant.cpp 695 0x48c4f2 10062 RefactoringAssistant::addClassifier refactoringassistant.cpp 695 0x48c4f2 10063 RefactoringAssistant::refactor refactoringassistant.cpp 88 0x48e6f6 10064 UMLApp::refactor uml.cpp 2093 0x67d3c3 10065 WidgetBase::slotMenuSelection widgetbase.cpp 829 0x62d978 10066 ClassifierWidget::slotMenuSelection classifierwidget.cpp 1018 0x5fe08b 10067 WidgetBase::contextMenuEvent widgetbase.cpp 669 0x62dbe7 10068 QGraphicsItem::sceneEvent qgraphicsitem.cpp 6720 0x7ffff4f6184d 10069 QGraphicsScene::contextMenuEvent qgraphicsscene.cpp 3617 0x7ffff4f8a73e 10070 UMLScene::contextMenuEvent umlscene.cpp 2961 0x6ca86e 10071 QGraphicsScene::event qgraphicsscene.cpp 3412 0x7ffff4f9e2b0 10072 QApplicationPrivate::notify_helper qapplication.cpp 4562 0x7ffff49a491c 10073 QApplication::notify qapplication.cpp 4423 0x7ffff49a8d9a 10074 KApplication::notify kapplication.cpp 311 0x7ffff6750e16 10075 QCoreApplication::notifyInternal qcoreapplication.cpp 949 0x7ffff5817e7e 10076 sendEvent qcoreapplication.h 231 0x7ffff4faf652 10077 QGraphicsView::contextMenuEvent qgraphicsview.cpp 2892 0x7ffff4faf652 10078 QWidget::event qwidget.cpp 8554 0x7ffff49f412e 10079 QFrame::event qframe.cpp 557 0x7ffff4d9fa86 10080 QGraphicsView::viewportEvent qgraphicsview.cpp 2866 0x7ffff4fb7aab 10081 QCoreApplicationPrivate::sendThroughObjectEventFilters qcoreapplication.cpp 1059 0x7ffff5817fe6 10082 QApplicationPrivate::notify_helper qapplication.cpp 4558 0x7ffff49a48ec 10083 QApplication::notify qapplication.cpp 4184 0x7ffff49a9305 10084 KApplication::notify kapplication.cpp 311 0x7ffff6750e16 10085 QCoreApplication::notifyInternal qcoreapplication.cpp 949 0x7ffff5817e7e 10086 sendSpontaneousEvent qcoreapplication.h 234 0x7ffff4a20091 10087 QETWidget::translateMouseEvent qapplication_x11.cpp 4533 0x7ffff4a20091 10088 QApplication::x11ProcessEvent qapplication_x11.cpp 3651 0x7ffff4a1edc1 10089 x11EventSourceDispatch qguieventdispatcher_glib.cpp 146 0x7ffff4a45162 10090 g_main_context_dispatch /usr/lib64/libglib-2.0.so.0 0x7fffeff3f3b5 10091 ?? /usr/lib64/libglib-2.0.so.0 0x7fffeff3f6e8 10092 g_main_context_iteration /usr/lib64/libglib-2.0.so.0 0x7fffeff3f7a4 10093 QEventDispatcherGlib::processEvents qeventdispatcher_glib.cpp 425 0x7ffff58464d6 10094 QGuiEventDispatcherGlib::processEvents qguieventdispatcher_glib.cpp 204 0x7ffff4a44dde 10095 QEventLoop::processEvents qeventloop.cpp 149 0x7ffff5816b2f 10096 QEventLoop::exec qeventloop.cpp 204 0x7ffff5816db8 10097 QCoreApplication::exec qcoreapplication.cpp 1221 0x7ffff581baf8 10098 main main.cpp 113 0x437f92
Git commit 0d413fa8cb578e8cfa4a38f2caaa61532d592d46 by Ralf Habacker. Committed on 19/11/2013 at 21:15. Pushed by habacker into branch 'master'. Recursive crash fix opening refactoring assistant. M +10 -0 umbrello/refactoring/refactoringassistant.cpp M +1 -0 umbrello/refactoring/refactoringassistant.h http://commits.kde.org/umbrello/0d413fa8cb578e8cfa4a38f2caaa61532d592d46
Git commit 415d33db7fe27730bb97987e95a4ce606fd6aba3 by Ralf Habacker. Committed on 19/11/2013 at 21:15. Pushed by habacker into branch 'KDE/4.12'. Recursive crash fix opening refactoring assistant. (cherry picked from commit 0d413fa8cb578e8cfa4a38f2caaa61532d592d46) M +10 -0 umbrello/refactoring/refactoringassistant.cpp M +1 -0 umbrello/refactoring/refactoringassistant.h http://commits.kde.org/umbrello/415d33db7fe27730bb97987e95a4ce606fd6aba3
Git commit 1cce00cc98c0c5adfc356f97010ff0800d18a438 by Ralf Habacker. Committed on 19/11/2013 at 21:15. Pushed by habacker into branch 'KDE/4.11'. Recursive crash fix opening refactoring assistant. (cherry picked from commit 415d33db7fe27730bb97987e95a4ce606fd6aba3) M +10 -0 umbrello/refactoring/refactoringassistant.cpp M +1 -0 umbrello/refactoring/refactoringassistant.h http://commits.kde.org/umbrello/1cce00cc98c0c5adfc356f97010ff0800d18a438
part b moved to #327834
Part B is fixed in 4.12 (not backported to 4.11).