<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>333363</bug_id>
          
          <creation_ts>2014-04-13 02:00:54 +0000</creation_ts>
          <short_desc>Crash when doing code import.</short_desc>
          <delta_ts>2014-06-16 19:42:08 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>umbrello</product>
          <component>general</component>
          <version>unspecified</version>
          <rep_platform>openSUSE</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>drkonqi</keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter>pwagner9000</reporter>
          <assigned_to name="Umbrello Development Group">umbrello-devel</assigned_to>
          <cc>okellogg</cc>
    
    <cc>ralf.habacker</cc>
          
          <cf_commitlink>http://commits.kde.org/umbrello/c2228a10e11a0ab5f37359a9f631d69228e9d5b3</cf_commitlink>
          <cf_versionfixedin>4.12.5</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1441040</commentid>
    <comment_count>0</comment_count>
    <who name="">pwagner9000</who>
    <bug_when>2014-04-13 02:00:54 +0000</bug_when>
    <thetext>Application: umbrello (2.12.99-9f77894)
KDE Platform Version: 4.11.5
Qt Version: 4.8.5
Operating System: Linux 3.11.10-7-desktop x86_64
Distribution: &quot;openSUSE 13.1 (Bottle) (x86_64)&quot;

-- Information about the crash:
- What I was doing when the application crashed:
When using the &quot;Code Importing Wizard&quot; selecting a base directory with &gt;125 Ada files. Immediate crash/closure of the program umbello
Note: To start umbello the following command was used &quot;/home/userdirectory/umbrello/bin/umbrello --geometry 600X400+0+0&amp;&quot;

-- Backtrace:
Application: Umbrello UML Modeller (umbrello), signal: Segmentation fault
Using host libthread_db library &quot;/lib64/libthread_db.so.1&quot;.
[Current thread is 1 (Thread 0x7f3d9a24f880 (LWP 11466))]

Thread 3 (Thread 0x7f3d85f98700 (LWP 11503)):
#0  0x00007f3d976ef0af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f3d97982b66 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f3d970d9ac6 in ?? () from /usr/lib64/libQtGui.so.4
#3  0x00007f3d9798268f in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007f3d976eb0db in start_thread () from /lib64/libpthread.so.0
#5  0x00007f3d95f3a90d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f3d85797700 (LWP 11504)):
#0  0x00007f3d95f31b3d in poll () from /lib64/libc.so.6
#1  0x00007f3d9258b604 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f3d9258b70c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f3d97aaed76 in QEventDispatcherGlib::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#4  0x00007f3d97a80d0f in QEventLoop::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#5  0x00007f3d97a81005 in QEventLoop::exec(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#6  0x00007f3d9797ffef in QThread::exec() () from /usr/lib64/libQtCore.so.4
#7  0x00007f3d97a62513 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007f3d9798268f in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007f3d976eb0db in start_thread () from /lib64/libpthread.so.0
#10 0x00007f3d95f3a90d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f3d9a24f880 (LWP 11466)):
[KCrash Handler]
#5  0x00007f3d979c5d00 in QString::operator==(QString const&amp;) const () from /usr/lib64/libQtCore.so.4
#6  0x00000000006309e6 in operator!= (s=..., this=0x60) at /usr/include/QtCore/qstring.h:406
#7  UMLAttribute::setInitialValue (this=0x0, iv=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/attribute.cpp:110
#8  0x00000000004f7026 in AdaImport::parseStmt (this=0x2b316b0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:620
#9  0x0000000000506452 in NativeImportBase::parseFile (this=0x2b316b0, filename=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/nativeimportbase.cpp:425
#10 0x00000000004f34d7 in AdaImport::parseStems (this=this@entry=0x2b316b0, stems=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:187
#11 0x00000000004f41a8 in AdaImport::parseStmt (this=0x2b316b0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:226
#12 0x0000000000506452 in NativeImportBase::parseFile (this=0x2b316b0, filename=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/nativeimportbase.cpp:425
#13 0x00000000004f34d7 in AdaImport::parseStems (this=this@entry=0x2b316b0, stems=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:187
#14 0x00000000004f41a8 in AdaImport::parseStmt (this=0x2b316b0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:226
#15 0x0000000000506452 in NativeImportBase::parseFile (this=0x2b316b0, filename=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/nativeimportbase.cpp:425
#16 0x00000000004f34d7 in AdaImport::parseStems (this=this@entry=0x2b316b0, stems=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:187
#17 0x00000000004f41a8 in AdaImport::parseStmt (this=0x2b316b0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:226
#18 0x0000000000506452 in NativeImportBase::parseFile (this=0x2b316b0, filename=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/nativeimportbase.cpp:425
#19 0x00000000004f34d7 in AdaImport::parseStems (this=this@entry=0x2b316b0, stems=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:187
#20 0x00000000004f48f8 in AdaImport::parseStmt (this=0x2b316b0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/adaimport.cpp:240
#21 0x0000000000506452 in NativeImportBase::parseFile (this=0x2b316b0, filename=...) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimport/nativeimportbase.cpp:425
#22 0x00000000004967f5 in CodeImpThread::run (this=0x2ac7170) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimpwizard/codeimpthread.cpp:62
#23 0x0000000000494bbe in CodeImpStatusPage::importCodeFile (this=this@entry=0x257a5d0, noError=noError@entry=true) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimpwizard/codeimpstatuspage.cpp:181
#24 0x0000000000494e6f in CodeImpStatusPage::importCode (this=0x257a5d0) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/codeimpwizard/codeimpstatuspage.cpp:150
#25 0x00007f3d97a95d68 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#26 0x00007f3d9724a4e2 in QAbstractButton::clicked(bool) () from /usr/lib64/libQtGui.so.4
#27 0x00007f3d96fae4d3 in ?? () from /usr/lib64/libQtGui.so.4
#28 0x00007f3d96faf643 in ?? () from /usr/lib64/libQtGui.so.4
#29 0x00007f3d96faf72c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQtGui.so.4
#30 0x00007f3d96c50dfe in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#31 0x00007f3d96c018ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#32 0x00007f3d96c07fad in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#33 0x00007f3d989c018a in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#34 0x00007f3d97a820ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#35 0x00007f3d96c07763 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&lt;QWidget&gt;&amp;, bool) () from /usr/lib64/libQtGui.so.4
#36 0x00007f3d96c78f7b in ?? () from /usr/lib64/libQtGui.so.4
#37 0x00007f3d96c779ec in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4
#38 0x00007f3d96c9e882 in ?? () from /usr/lib64/libQtGui.so.4
#39 0x00007f3d9258b316 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#40 0x00007f3d9258b668 in ?? () from /usr/lib64/libglib-2.0.so.0
#41 0x00007f3d9258b70c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#42 0x00007f3d97aaed55 in QEventDispatcherGlib::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#43 0x00007f3d96c9e936 in ?? () from /usr/lib64/libQtGui.so.4
#44 0x00007f3d97a80d0f in QEventLoop::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#45 0x00007f3d97a81005 in QEventLoop::exec(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#46 0x00007f3d970a3cdc in QDialog::exec() () from /usr/lib64/libQtGui.so.4
#47 0x000000000068911f in UMLApp::slotImportingWizard (this=&lt;optimized out&gt;) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/uml.cpp:2631
#48 0x00007f3d97a95d68 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#49 0x00007f3d96bfb752 in QAction::triggered(bool) () from /usr/lib64/libQtGui.so.4
#50 0x00007f3d96bfd123 in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQtGui.so.4
#51 0x00007f3d970260e9 in ?? () from /usr/lib64/libQtGui.so.4
#52 0x00007f3d9702a619 in ?? () from /usr/lib64/libQtGui.so.4
#53 0x00007f3d98a76735 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libkdeui.so.5
#54 0x00007f3d96c50dfe in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#55 0x00007f3d9702e3eb in QMenu::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#56 0x00007f3d96c018ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#57 0x00007f3d96c07fad in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#58 0x00007f3d989c018a in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#59 0x00007f3d97a820ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#60 0x00007f3d96c07763 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer&lt;QWidget&gt;&amp;, bool) () from /usr/lib64/libQtGui.so.4
#61 0x00007f3d96c792ac in ?? () from /usr/lib64/libQtGui.so.4
#62 0x00007f3d96c779ec in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4
#63 0x00007f3d96c9e882 in ?? () from /usr/lib64/libQtGui.so.4
#64 0x00007f3d9258b316 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#65 0x00007f3d9258b668 in ?? () from /usr/lib64/libglib-2.0.so.0
#66 0x00007f3d9258b70c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#67 0x00007f3d97aaed76 in QEventDispatcherGlib::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#68 0x00007f3d96c9e936 in ?? () from /usr/lib64/libQtGui.so.4
#69 0x00007f3d97a80d0f in QEventLoop::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#70 0x00007f3d97a81005 in QEventLoop::exec(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /usr/lib64/libQtCore.so.4
#71 0x00007f3d97a8613b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#72 0x000000000043b359 in main (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;) at /home/pwwagner/Desktop/work/src/umbrello/umbrello/main.cpp:123

Reported using DrKonqi</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441158</commentid>
    <comment_count>1</comment_count>
    <who name="Ralf Habacker">ralf.habacker</who>
    <bug_when>2014-04-13 18:34:17 +0000</bug_when>
    <thetext>Please append a test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441225</commentid>
    <comment_count>2</comment_count>
    <who name="Oliver Kellogg">okellogg</who>
    <bug_when>2014-04-14 06:08:16 +0000</bug_when>
    <thetext>(In reply to comment #1)
&gt; Please append a test case

Agreed, test case is necessary for a definitive fix.

OTOH, looking at the backtrace,
Thread 1 [...]
#7 UMLAttribute::setInitialValue (this=0x0, iv=...) at attribute.cpp:110
#8 0x00000000004f7026 in AdaImport::parseStmt (this=0x2b316b0) at codeimport/adaimport.cpp:620

At adaimport.cpp:620 we have a dereference of  &apos;attr&apos; without preceding check for NULL pointer:
619    UMLAttribute *attr = static_cast&lt;UMLAttribute*&gt;(o);
620    attr-&gt;setInitialValue(initialValue);

The crash is inevitable here (even without knowing the exact use case.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441237</commentid>
    <comment_count>3</comment_count>
    <who name="Ralf Habacker">ralf.habacker</who>
    <bug_when>2014-04-14 08:57:06 +0000</bug_when>
    <thetext>Git commit 3094593ec89e2fbb1505b3e1ee472c42b4d90826 by Ralf Habacker.
Committed on 14/04/2014 at 08:53.
Pushed by habacker into branch &apos;master&apos;.

Crash fix on ada import.

M  +4    -2    umbrello/codeimport/adaimport.cpp

http://commits.kde.org/umbrello/3094593ec89e2fbb1505b3e1ee472c42b4d90826</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441239</commentid>
    <comment_count>4</comment_count>
    <who name="Ralf Habacker">ralf.habacker</who>
    <bug_when>2014-04-14 09:00:09 +0000</bug_when>
    <thetext>Git commit 7ac0855f618f0bf32cf1a65eb9d27cf0c90540e1 by Ralf Habacker.
Committed on 14/04/2014 at 08:53.
Pushed by habacker into branch &apos;KDE/4.13&apos;.

Crash fix on ada import.
FIXED-IN:4.13.0
(cherry picked from commit 3094593ec89e2fbb1505b3e1ee472c42b4d90826)

M  +4    -2    umbrello/codeimport/adaimport.cpp

http://commits.kde.org/umbrello/7ac0855f618f0bf32cf1a65eb9d27cf0c90540e1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441243</commentid>
    <comment_count>5</comment_count>
    <who name="Ralf Habacker">ralf.habacker</who>
    <bug_when>2014-04-14 09:01:10 +0000</bug_when>
    <thetext>Git commit c2228a10e11a0ab5f37359a9f631d69228e9d5b3 by Ralf Habacker.
Committed on 14/04/2014 at 08:53.
Pushed by habacker into branch &apos;KDE/4.12&apos;.

Crash fix on ada import.
FIXED-IN:4.12.5
(cherry picked from commit 3094593ec89e2fbb1505b3e1ee472c42b4d90826)

M  +4    -2    umbrello/codeimport/adaimport.cpp

http://commits.kde.org/umbrello/c2228a10e11a0ab5f37359a9f631d69228e9d5b3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1441570</commentid>
    <comment_count>6</comment_count>
    <who name="Ralf Habacker">ralf.habacker</who>
    <bug_when>2014-04-16 06:23:23 +0000</bug_when>
    <thetext>For the (In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; Please append a test case
&gt; 
&gt; Agreed, test case is necessary for a definitive fix.
In the crash case the code importer writes in  Import_Utils::insertAttribute()
        DEBUG(DBG_SRC) &lt;&lt; &quot;insertAttribute: Don not know what to do with &quot;
                 &lt;&lt; owner-&gt;name() &lt;&lt; &quot; (object type &quot; &lt;&lt; UMLObject::toString(ot) &lt;&lt; &quot;)&quot;;
which indicates a issue with the parser or the related ada code. If this is a parser issue a related bug should be opened.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446578</commentid>
    <comment_count>7</comment_count>
    <who name="Oliver Kellogg">okellogg</who>
    <bug_when>2014-05-08 04:58:27 +0000</bug_when>
    <thetext>Git commit 17abd847cb78dd6e895a490f3a6fc02fe0433cc0 by Oliver Kellogg.
Committed on 08/05/2014 at 04:51.
Pushed by okellogg into branch &apos;master&apos;.

umbrello/codeimport/adaimport.cpp

- Fix crash on Ada import seen after primary crash cause was lifted
  (followup to commit 3094593)

M  +1    -1    umbrello/codeimport/adaimport.cpp

http://commits.kde.org/umbrello/17abd847cb78dd6e895a490f3a6fc02fe0433cc0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455666</commentid>
    <comment_count>8</comment_count>
    <who name="Oliver Kellogg">okellogg</who>
    <bug_when>2014-06-16 19:42:08 +0000</bug_when>
    <thetext>Git commit 3b43de1ee590214b3fd26e3b5f749dc03525da1d by Oliver Kellogg.
Committed on 08/05/2014 at 04:51.
Pushed by okellogg into branch &apos;KDE/4.13&apos;.

umbrello/codeimport/adaimport.cpp

- Fix crash on Ada import seen after primary crash cause was lifted
  (followup to commit 3094593)

M  +1    -1    umbrello/codeimport/adaimport.cpp

http://commits.kde.org/umbrello/3b43de1ee590214b3fd26e3b5f749dc03525da1d</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>