Bug 56779 - loading another project while background parsing leaves stranded progress bar
Summary: loading another project while background parsing leaves stranded progress bar
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Language Support: CPP (old) (show other bugs)
Version: 3.0.0a4
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: KDevelop Developers
URL:
Keywords:
: 60680 62990 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-04-03 08:45 UTC by John Firebaugh
Modified: 2004-03-22 19:33 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Firebaugh 2003-04-03 08:45:39 UTC
Version:           3.0.0a4 (using KDE 3.1.9)
Compiler:          gcc version 3.2.3 20030316 (Debian prerelease)
OS:          Linux (i686) release 2.4.19

Load a project. While the parsing of the project files is in progress, with the status bar showing a progress bar, load a different project. Now there will be two progress bars in the status bar.
Comment 1 Olivier Goffart 2003-06-05 14:20:13 UTC
When i open gideon, the previous project is loading. If during the parsing of the project 
i load a project in the Open Recent Project menu, kdevelop crash.  
 
here is the end of the bt (i'm sorry, there are no debug info) 
 
#5  <signal handler called> 
#6  0x40c940c7 in QObject::activate_signal () 
   from /usr/lib/qt/lib/libqt-mt.so.3 
#7  0x08095fa8 in KDevLanguageSupport::updatedSourceInfo () 
#8  0x41915f32 in CppSupportPart::initialParse () 
   from /opt/kde/lib/kde3/libkdevcppsupport.so 
#9  0x41919c4b in CppSupportPart::qt_invoke () 
   from /opt/kde/lib/kde3/libkdevcppsupport.so 
#10 0x40c941c4 in QObject::activate_signal () 
   from /usr/lib/qt/lib/libqt-mt.so.3 
#11 0x40f15e2a in QSignal::signal () from /usr/lib/qt/lib/libqt-mt.so.3 
#12 0x40caa294 in QSignal::activate () from /usr/lib/qt/lib/libqt-mt.so.3 
#13 0x40caf983 in QSingleShotTimer::event () from /usr/lib/qt/lib/libqt-mt.so.3 
 
Comment 2 Matt Rogers 2003-06-05 15:36:28 UTC
I experience the same crash as Olivier, and i have a bt with debug info :) here goes. It's not quite 
the same, but close. 
 
[New Thread 16384 (LWP 28853)] 
[New Thread 32769 (LWP 28866)] 
[New Thread 32770 (LWP 28870)] 
0x412fbfa8 in waitpid () from /lib/libpthread.so.0 
#0  0x412fbfa8 in waitpid () from /lib/libpthread.so.0 
#1  0x40a4206e in KCrash::defaultCrashHandler(int) () 
   from /usr/kde/3.1/lib/libkdecore.so.4 
#2  0x412fae1a in __pthread_sighandler () from /lib/libpthread.so.0 
#3  <signal handler called> 
#4  0x41d53387 in QMap<QString, QDateTime>::detach() (this=0xbfffeeb0) 
    at qmap.h:751 
#5  0x41d52859 in QMap<QString, QDateTime>::find(QString const&) ( 
    this=0x8b4bfcc, k=@0xbfffef30) at qmap.h:707 
#6  0x41d4f912 in CppSupportPart::maybeParse(QString const&) (this=0x8b4bf58,  
    fileName=@0xbfffef30) at cppsupportpart.cpp:756 
#7  0x41d4f5dd in CppSupportPart::parseProject() (this=0x8b4bf58) 
    at cppsupportpart.cpp:715 
#8  0x41d4f2fc in CppSupportPart::initialParse() (this=0x8b4bf58) 
    at cppsupportpart.cpp:677 
#9  0x41d51df1 in CppSupportPart::qt_invoke(int, QUObject*) (this=0x8b4bf58,  
    _id=23, _o=0xbffff0a0) at cppsupportpart.moc:202 
#10 0x40daf299 in QObject::activate_signal(QConnectionList*, QUObject*) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#11 0x4108f942 in QSignal::signal(QVariant const&) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#12 0x40dc9588 in QSignal::activate() () from /usr/qt/3/lib/libqt-mt.so.3 
#13 0x40dd0503 in QSingleShotTimer::event(QEvent*) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#14 0x40d514c4 in QApplication::internalNotify(QObject*, QEvent*) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#15 0x40d50a3b in QApplication::notify(QObject*, QEvent*) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#16 0x409c8049 in KApplication::notify(QObject*, QEvent*) () 
   from /usr/kde/3.1/lib/libkdecore.so.4 
#17 0x40d2c075 in QEventLoop::activateTimers() () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#18 0x40d098a8 in QEventLoop::processEvents(unsigned) () 
   from /usr/qt/3/lib/libqt-mt.so.3 
#19 0x40d652c6 in QEventLoop::enterLoop() () from /usr/qt/3/lib/libqt-mt.so.3 
#20 0x40d65168 in QEventLoop::exec() () from /usr/qt/3/lib/libqt-mt.so.3 
#21 0x40d516f1 in QApplication::exec() () from /usr/qt/3/lib/libqt-mt.so.3 
#22 0x08071ed2 in main (argc=1, argv=0xbffff784) at main.cpp:124 
#23 0x414527a7 in __libc_start_main () from /lib/libc.so.6 
 
Comment 3 Amilcar do Carmo Lucas 2003-07-03 10:07:07 UTC
*** Bug 60680 has been marked as a duplicate of this bug. ***
Comment 4 Jens Dagerbo 2003-11-03 14:06:55 UTC
Hmm.. I crashed too, but with a different backtrace:

[New Thread 16384 (LWP 13279)]
[New Thread 32769 (LWP 13292)]
[New Thread 32770 (LWP 13295)]
0x4188039c in waitpid () from /lib/libpthread.so.0
#0  0x4188039c in waitpid () from /lib/libpthread.so.0
#1  0x40ddcb70 in KCrash::defaultCrashHandler(int) ()
   from /opt/kde/lib/libkdecore.so.4
#2  0x4187f17c in __pthread_sighandler () from /lib/libpthread.so.0
#3  <signal handler called>
#4  0x414425e1 in QGList::append(void*) () from /opt/qt-3.2.1/lib/libqt-mt.so.3
#5  0x4285d596 in QPtrList<FileCreate::FileType>::append(FileCreate::FileType const*) (this=0x86fa8c0, d=0x8969998) at qptrlist.h:82
#6  0x4285ae24 in FileCreatePart::readTypes(QDomDocument const&, QPtrList<FileCreate::FileType>&, bool) (this=0x86fa880, dom=@0xbfffed80, 
    m_filetypes=@0x86fa8c0, enable=false) at filecreate_part.cpp:207
#7  0x4285ca13 in FileCreatePart::slotInitialize() (this=0x86fa880)
    at filecreate_part.cpp:550
#8  0x4285d25d in FileCreatePart::qt_invoke(int, QUObject*) (this=0x86fa880, 
    _id=4, _o=0xbfffee70) at filecreate_part.moc:110
#9  0x411a4f80 in QObject::activate_signal(QConnectionList*, QUObject*) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#10 0x414bc202 in QSignal::signal(QVariant const&) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#11 0x411bef18 in QSignal::activate() () from /opt/qt-3.2.1/lib/libqt-mt.so.3
#12 0x411c6493 in QSingleShotTimer::event(QEvent*) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#13 0x4114a1e5 in QApplication::internalNotify(QObject*, QEvent*) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#14 0x4114989b in QApplication::notify(QObject*, QEvent*) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#15 0x40d35b2e in KApplication::notify(QObject*, QEvent*) ()
   from /opt/kde/lib/libkdecore.so.4
#16 0x41139c0d in QEventLoop::activateTimers() ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#17 0x410f7254 in QEventLoop::processEvents(unsigned) ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#18 0x4115d3f6 in QEventLoop::enterLoop() ()
   from /opt/qt-3.2.1/lib/libqt-mt.so.3
#19 0x4115d298 in QEventLoop::exec() () from /opt/qt-3.2.1/lib/libqt-mt.so.3
#20 0x4114a431 in QApplication::exec() () from /opt/qt-3.2.1/lib/libqt-mt.so.3
#21 0x08069dcf in main (argc=1, argv=0xbffff534) at main.cpp:128
#22 0x419f3b47 in __libc_start_main () from /lib/libc.so.6
Comment 5 Jens Dagerbo 2003-11-25 13:41:57 UTC
*** Bug 62990 has been marked as a duplicate of this bug. ***
Comment 6 Jens Dagerbo 2004-03-22 19:33:47 UTC
CVS commit by dagerbo: 

Restructured parseProject() to not require processEvents() calls.
This should fix the case where closing the project during
the initial parsing results in a crash.

CCMAIL: 56779-done@bugs.kde.org


  M +108 -98   cppsupportpart.cpp   1.254
  M +21 -0     cppsupportpart.h   1.81