Bug 271243 - crashes even if a association was drawn
Summary: crashes even if a association was drawn
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: 1.1
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-18 20:51 UTC by Olaf Lippmann
Modified: 2013-11-06 17:25 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 4.8.1


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Olaf Lippmann 2011-04-18 20:51:43 UTC
Version:           1.1 (using KDE 4.4.5) 
OS:                Linux

Umbrello crashes if a association was drawn in a wrong direction. See reproducibility for more details too.

Reproducible: Always

Steps to Reproduce:
try to draw a containment from a class to a package (I know, this is the wrong way to draw a UML diagram, but it's angry even if it's happen unintentionally)

Actual Results:  
umbrello hangs up (application crashes reliable)

Expected Results:  
A defined error should be shown regarding the wrong handling. It works even fine if a proper containment association was drawn before. 

OS: Linux (x86_64) release 2.6.32-30-generic
Compiler: cc
Comment 1 Oliver Kellogg 2012-02-19 00:21:25 UTC
SVN commit 1280794 by okellogg:

AssocRules cleanup:
- Remove unused function
  static bool allowAssociation(Uml::AssociationType, const std::type_info &)
- At function static bool allowAssociation(Uml::AssociationType,
                                           UMLWidget *, UMLWidget *, bool)
  remove the last argument (extendedCheck), and put "#if 0" at the code
  for extendedCheck due to crashes.
- At struct Assoc_Rule, rename member `directional' to `bidirectional'.
  Add test for `bidirectional' in the allowAssociation functions.
- At definition of m_AssocRules[], 
  - remove lines which are redundant due to `bidirectional' being true.
  - at lines for AssociationType::Containment, set `bidirectional' to
    false.



 M  +66 -49    assocrules.cpp  
 M  +2 -7      assocrules.h  
 M  +5 -5      umlview.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1280794
Comment 2 Ralf Habacker 2013-11-06 17:25:03 UTC
set version-fixed-in from 4.8.1 changelog