[Uml-devel] [Bug 283744] Gratuitous warning messages on loading project file

Oliver Kellogg okellogg at users.sourceforge.net
Sun Feb 12 21:22:58 UTC 2012


https://bugs.kde.org/show_bug.cgi?id=283744





--- Comment #23 from Oliver Kellogg <okellogg users sourceforge net>  2012-02-12 21:22:58 ---
(In reply to comment #21)
> [...]
> > Apparently the UMLRole currently being loaded is somehow already known at
> > the UMLDoc. [...]
> 
> Why this is so remains a mystery to me. AFAIK it should not be that way.

I have to correct myself: It is okay that way.
Setting a breakpoint before the "already in use" warning reveals:

#0  UMLObject::loadFromXMI (this=0x87b0b40, element=...) at
/trunk/KDE/kdesdk/umbrello/umbrello/umlobject.cpp:930
#1  0x0833bedd in UMLAssociation::load (this=0x87b0ae0, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/association.cpp:320
#2  0x083f7498 in UMLObject::loadFromXMI (this=0x87b0ae0, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umlobject.cpp:1067
#3  0x08365955 in UMLFolder::load (this=0x8687c30, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/folder.cpp:519
#4  0x08364b79 in UMLFolder::load (this=0x8687c30, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/folder.cpp:460
#5  0x083f7498 in UMLObject::loadFromXMI (this=0x8687c30, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umlobject.cpp:1067
#6  0x083d5621 in UMLDoc::loadUMLObjectsFromXMI (this=0x8614fb0, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umldoc.cpp:2087
#7  0x083d5117 in UMLDoc::loadUMLObjectsFromXMI (this=0x8614fb0, element=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umldoc.cpp:2106
#8  0x083d69f1 in UMLDoc::loadFromXMI (this=0x8614fb0, file=..., encode=<value
optimized out>)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umldoc.cpp:1915
#9  0x083d2830 in UMLDoc::openDocument (this=0x8614fb0, url=..., format=0x0)
    at /trunk/KDE/kdesdk/umbrello/umbrello/umldoc.cpp:542
#10 0x083b14b0 in UMLApp::openDocumentFile (this=0x8607ba0, url=...)
    at /trunk/KDE/kdesdk/umbrello/umbrello/uml.cpp:836
#11 0x08381c72 in initDocument (args=0x8568f68) at
/trunk/KDE/kdesdk/umbrello/umbrello/main.cpp:125
#12 0x08382f26 in main (argc=12, argv=0xc) at
/trunk/KDE/kdesdk/umbrello/umbrello/main.cpp:98

The hot spot here is #3 (folder.cpp:519) where loadFromXMI() is called on a
newly created UMLObject. One line above (line 518), we have:

        pObject->setUMLPackage(this);

That is why the UMLRole is already present in the UMLFolder::m_objects when we
come to association.cpp:320, getUMLRole(A)->loadFromXMI(tempElement).

-- 
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