[Uml-devel] [Bug 235703] Umbrello - Segmentation fault when trying to generate code Java

Oliver Kellogg okellogg at users.sourceforge.net
Sun Feb 26 20:12:04 UTC 2012


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


Oliver Kellogg <okellogg at users.sourceforge.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED




--- Comment #3 from Oliver Kellogg <okellogg users sourceforge net>  2012-02-26 20:12:01 ---
SVN commit 1282402 by okellogg:

(In reply to comment #1)
> [...]
> you have an inheritance in the opposite direction.
> The mutual inheritance throws Umbrello off the handle and so I've removed
> the first one. (Actually I wonder why Umbrello did not disallow its
> creation.)

It turns out that
  AssocRules::allowAssociation(Uml::AssociationType,
                               UMLWidget *, UMLWidget *)
was being called twice: First in ToolBarStateAssociation::setSecondWidget()
(toolbarstateassociation.cpp:226) and again via ToolBarStateAssociation::
addAssociationInViewAndDoc() in UMLView::addAssociation().
At the time of the second call, the AssociationWidget was already created
and inserted at its role widgets.

Fixed as follows:
- In UMLView::addAssociation(), remove the call to
  AssocRules::allowAssociation()
- At ToolBarStateAssociation::addAssociationInViewAndDoc(), change return
  type to bool (true for success) and test the success at
  ToolBarStateAssociation::setSecondWidget()
- Revert the "#if 0" at the extendedCheck code at assocrules.cpp:170 ff.
  thus re-enabling the check for illegal mutual associations.



 M  +1 -0      ChangeLog  
 M  +0 -33     umbrello/assocrules.cpp  
 M  +9 -6      umbrello/toolbarstateassociation.cpp  
 M  +1 -1      umbrello/toolbarstateassociation.h  
 M  +0 -7      umbrello/umlview.cpp  
 M  +25 -6     umbrello/widgets/associationwidget.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1282402

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