Bug 376939

Summary: KCrash: Application 'umbrello' crashing...
Product: [Applications] umbrello Reporter: Kip <kip>
Component: generalAssignee: Umbrello Development Group <umbrello-devel>
Status: RESOLVED FIXED    
Severity: crash CC: ralf.habacker
Priority: NOR    
Version: Git   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 2.21.3 (KDE Applications 16.12.3)
Sentry Crash Report:

Description Kip 2017-02-26 03:43:42 UTC
Umbrello head crashes when trying to export UML diagrams to SVG. Steps to repeat...

1. wget "https://bazaar.launchpad.net/~avaneya/avaneya/trunk/view/head:/Documentation/Contributors/AresEngine/UML/Engine.xmi"

$ umbrello --version
Qt: 4.8.7
KDE Development Platform: 4.14.22
Umbrello UML Modeller: 2.21.70-9676daf

2. $ umbrello --export svg Engine.xmi
Could not find 'klauncher' executable.
kdeinit4: Communication error with launcher. Exiting!
umbrello(6500)/kdeui (kdelibs): Attempt to use QAction "edit_undo" with KXMLGUIFactory! 
umbrello(6500)/kdeui (kdelibs): Attempt to use QAction "edit_redo" with KXMLGUIFactory!
(...)
umbrello(6500) AssociationWidget::calculateTextPosition: TODO:negative line segment index 
KCrash: Application 'umbrello' crashing...
KCrash: Attempting to start  from kdeinit
KCrash: Connect sock_file=/home/kip/.kde/socket-kip-desktop/kdeinit4__0
Warning: connect() failed: : Connection refused
KCrash: Attempting to start  directly
KCrash failed to exec(), errno = 2
Unable to start Dr. Konqi
Not forwarding the crash to Apport.
Comment 1 Ralf Habacker 2017-02-27 07:47:23 UTC
Git commit 0d348a574daf9196065895abdee2967e3ceab482 by Ralf Habacker.
Committed on 27/02/2017 at 07:46.
Pushed by habacker into branch 'master'.

Guard access to UMLfolder::m_diagrams elements to avoid crashes on application shutdown.

This crash happens on running umbrello from command line e.g. umbrello --export svg <xmifile>.

M  +1    -1    umbrello/uml1model/folder.cpp

https://commits.kde.org/umbrello/0d348a574daf9196065895abdee2967e3ceab482
Comment 2 Ralf Habacker 2017-02-27 07:47:23 UTC
Git commit 278c6afb3540d53dda986b9b0c816fd9f69fc198 by Ralf Habacker.
Committed on 27/02/2017 at 07:47.
Pushed by habacker into branch 'master'.

Fix crash by disconnecting slots in UMLApp::~UMLApp().

Connected slots results into accessing already deleted objects.

M  +9    -0    umbrello/uml.cpp

https://commits.kde.org/umbrello/278c6afb3540d53dda986b9b0c816fd9f69fc198
Comment 3 Ralf Habacker 2017-02-27 12:48:43 UTC
Git commit fbe7331061e9c08ebf11e128d7ece5d1750c2464 by Ralf Habacker.
Committed on 27/02/2017 at 12:47.
Pushed by habacker into branch 'Applications/16.12'.

Fix crash by disconnecting slots in UMLApp::~UMLApp().

Connected slots results into accessing already deleted objects.
FIXED-IN:2.12.3 (KDE Applications 16.12.3)
(cherry picked from commit 278c6afb3540d53dda986b9b0c816fd9f69fc198)

M  +9    -0    umbrello/uml.cpp

https://commits.kde.org/umbrello/fbe7331061e9c08ebf11e128d7ece5d1750c2464
Comment 4 Kip 2017-02-27 17:04:43 UTC
Hey Ralph. As usual your fix was fast and effective. Thanks again.