[Uml-devel] [Bug 268469] Umbrello crashed when changing the Package of a class
Ralf Habacker
ralf.habacker at freenet.de
Thu Dec 8 13:52:19 UTC 2011
https://bugs.kde.org/show_bug.cgi?id=268469
Ralf Habacker <ralf.habacker at freenet.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #5 from Ralf Habacker <ralf habacker freenet de> 2011-12-08 13:52:19 ---
Here is was happens behind the scene
Qt3Supportd4.dll!Q3ListViewItem::~Q3ListViewItem() Zeile 913 C++
umbrello.exe!UMLListViewItem::~UMLListViewItem() Zeile 175 + 0x45 Bytes
C++
umbrello.exe!UMLListViewItem::`scalar deleting destructor'() + 0x16 Bytes
C++
> umbrello.exe!UMLListView::moveObject(std::basic_string<char,std::char_traits<char>,std::allocator<char> > srcId, UMLListViewItem::ListViewType srcType, UMLListViewItem * newParent) Zeile 1656 + 0x34 Bytes C++
umbrello.exe!Model_Utils::treeViewMoveObjectTo(UMLObject * container,
UMLObject * object) Zeile 323 C++
umbrello.exe!ClassGenPage::updateObject() Zeile 434 + 0x10 Bytes C++
umbrello.exe!ClassPropDlg::slotApply() Zeile 170 C++
umbrello.exe!ClassPropDlg::slotOk() Zeile 159 C++
umbrello.exe!ClassPropDlg::qt_metacall(QMetaObject::Call _c, int _id, void
* * _a) Zeile 73 + 0x8 Bytes C++
QtCored4.dll!QMetaObject::metacall(QObject * object, QMetaObject::Call cl,
int idx, void * * argv) Zeile 238 C++
QtCored4.dll!QMetaObject::activate(QObject * sender, const QMetaObject *
m, int local_signal_index, void * * argv) Zeile 3280 + 0x27 Bytes C++
kdeui.dll!KDialog::okClicked() Zeile 258 + 0x15 Bytes C++
kdeui.dll!KDialog::slotButtonClicked(int button) Zeile 885 C++
kdeui.dll!KDialog::qt_metacall(QMetaObject::Call _c, int _id, void * * _a)
Zeile 190 + 0x1b Bytes C++
kdeui.dll!KPageDialog::qt_metacall(QMetaObject::Call _c, int _id, void * *
_a) Zeile 70 + 0x14 Bytes C++
umbrello.exe!ClassPropDlg::qt_metacall(QMetaObject::Call _c, int _id, void
* * _a) Zeile 68 + 0x17 Bytes C++
After pressing "ok" in the property dialog the widget is going to be moved to
the other package, which is handled in
> umbrello.exe!UMLListView::moveObject(std::basic_string<char,std::char_traits<char>,std::allocator<char> > srcId,
In fact a new widget is created and the old one deleted
case UMLListViewItem::lvt_Datatype:
if (newParentType == UMLListViewItem::lvt_Logical_Folder ||
newParentType == UMLListViewItem::lvt_Datatype_Folder ||
newParentType == UMLListViewItem::lvt_Logical_View ||
newParentType == UMLListViewItem::lvt_Class ||
newParentType == UMLListViewItem::lvt_Interface ||
newParentType == UMLListViewItem::lvt_Package) {
newItem = move->deepCopy(newParent);
if (m_doc->loading()) // deletion is not safe while loading
move->setVisible(false); // (the <listview> XMI may be
corrupted)
else
! delete move;
which means that 'temp' the current list view item is destroyed.
--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the umbrello-devel
mailing list