From kdevelop-bugs Fri Mar 31 16:38:16 2006 From: kdevelop-bugs-admin () barney ! cs ! uni-potsdam ! de Date: Fri, 31 Mar 2006 16:38:16 +0000 To: kdevelop-bugs Subject: [Bug 124662] New: KDevelop freezes when closing CPP project Message-Id: <20060331183814.124662.timcharper () yahoo ! com> X-MARC-Message: https://marc.info/?l=kdevelop-bugs&m=118306950109296 ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. http://bugs.kde.org/show_bug.cgi?id=124662 Summary: KDevelop freezes when closing CPP project Product: kdevelop Version: 3.3.2 Platform: Fedora RPMs OS/Version: Linux Status: UNCONFIRMED Severity: crash Priority: NOR Component: general AssignedTo: kdevelop-bugs kdevelop org ReportedBy: timcharper yahoo com Version: 3.3.2 (using KDE KDE 3.5.1) Installed from: Fedora RPMs Compiler: gcc version 4.1.0 20060304 (Red Hat 4.1.0-3) Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=i386-redhat-linux OS: Linux This is a new problem I've experienced since upgrading to 3.3.2 kdevelop. I have compiled kdevelop from sources. The problem appears to occur when kdevelop tries to "delete" the CppSupportPart component here: src/projectmanager.cpp 556-void ProjectManager::unloadLanguageSupport() 557-{ 558- KDevLanguageSupport *langSupport = API::getInstance()->languageSupport(); 559- if( !langSupport ) return; 560- kdDebug(9000) << "Language support for " << langSupport->name() << " unloading..." << endl; 561- PluginController::getInstance()->removePart( langSupport ); 562: delete langSupport; 563- API::getInstance()->setLanguageSupport(0); 564-} The bug reproduces everytime when I open and close a CPP lang-support project. It occurs even when all project plugins disabled. When running kdevelop outside of the debugger, it simply freezes (no crash). I traced through the source code with gdb and narrowed it down to src/projectmanager.cpp:562 here's the debug output (gdb) next /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:561:17420:beg:0xb7f6d830 (gdb) info thread 2 Thread -1221530720 (LWP 19944) 0xffffe410 in __kernel_vsyscall () * 1 Thread -1211124048 (LWP 19923) ProjectManager::unloadLanguageSupport (this=0x8197130) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:561 (gdb) backtrace #0 ProjectManager::unloadLanguageSupport (this=0x8197130) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:561 #1 0xb7f7090b in ProjectManager::closeProject (this=0x8197130, exiting=false) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:326 #2 0xb7f71a8b in ProjectManager::qt_invoke (this=0x8197130, _id=4, _o=0xbfe8b658) at ./projectmanager.moc:115 #3 0x4623f2aa in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #4 0x4623fc3d in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #5 0x4947faf9 in KAction::activated () from /usr/lib/libkdeui.so.4 #6 0x494b67b2 in KAction::slotActivated () from /usr/lib/libkdeui.so.4 #7 0x495a5e5d in KAction::slotPopupActivated () from /usr/lib/libkdeui.so.4 #8 0x495a6121 in KAction::qt_invoke () from /usr/lib/libkdeui.so.4 #9 0x4623f2aa in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #10 0x465c869e in QSignal::signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #11 0x4625d6c7 in QSignal::activate () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #12 0x4635f93f in QPopupMenu::keyPressEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #13 0x494fcf56 in KPopupMenu::keyPressEvent () from /usr/lib/libkdeui.so.4 #14 0x4627b60b in QWidget::event () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #15 0x461d6a1b in QApplication::internalNotify () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #16 0x461d84bb in QApplication::notify () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #17 0x4922bac3 in KApplication::notify () from /usr/lib/libkdecore.so.4 #18 0x4616c1f3 in QETWidget::translateKeyEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #19 0x4616d0db in QApplication::x11ProcessEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #20 0x4617f07b in QEventLoop::processEvents () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #21 0x461f0135 in QEventLoop::enterLoop () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #22 0x461effde in QEventLoop::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #23 0x461d665f in QApplication::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #24 0x0804ef87 in main (argc=-16777216, argv=0xff000000) at /home/tim/development/sources/kde-head/kdevelop/src/main.cpp:145 (gdb) info args this = (ProjectManager * const) 0x8197130 (gdb) info local langSupport = (KDevLanguageSupport *) 0x8ab2ec8 (gdb) next /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:562:17482:beg:0xb7f6d85c (gdb) info thread 2 Thread -1221530720 (LWP 19944) 0xffffe410 in __kernel_vsyscall () * 1 Thread -1211124048 (LWP 19923) ProjectManager::unloadLanguageSupport (this=0x8197130) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:562 (gdb) backtrace #0 ProjectManager::unloadLanguageSupport (this=0x8197130) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:562 #1 0xb7f7090b in ProjectManager::closeProject (this=0x8197130, exiting=false) at /home/tim/development/sources/kde-head/kdevelop/src/projectmanager.cpp:326 #2 0xb7f71a8b in ProjectManager::qt_invoke (this=0x8197130, _id=4, _o=0xbfe8b658) at ./projectmanager.moc:115 #3 0x4623f2aa in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #4 0x4623fc3d in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #5 0x4947faf9 in KAction::activated () from /usr/lib/libkdeui.so.4 #6 0x494b67b2 in KAction::slotActivated () from /usr/lib/libkdeui.so.4 #7 0x495a5e5d in KAction::slotPopupActivated () from /usr/lib/libkdeui.so.4 #8 0x495a6121 in KAction::qt_invoke () from /usr/lib/libkdeui.so.4 #9 0x4623f2aa in QObject::activate_signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #10 0x465c869e in QSignal::signal () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #11 0x4625d6c7 in QSignal::activate () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #12 0x4635f93f in QPopupMenu::keyPressEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #13 0x494fcf56 in KPopupMenu::keyPressEvent () from /usr/lib/libkdeui.so.4 #14 0x4627b60b in QWidget::event () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #15 0x461d6a1b in QApplication::internalNotify () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #16 0x461d84bb in QApplication::notify () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #17 0x4922bac3 in KApplication::notify () from /usr/lib/libkdecore.so.4 #18 0x4616c1f3 in QETWidget::translateKeyEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #19 0x4616d0db in QApplication::x11ProcessEvent () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #20 0x4617f07b in QEventLoop::processEvents () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #21 0x461f0135 in QEventLoop::enterLoop () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #22 0x461effde in QEventLoop::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #23 0x461d665f in QApplication::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3 #24 0x0804ef87 in main (argc=-16777216, argv=0xff000000) at /home/tim/development/sources/kde-head/kdevelop/src/main.cpp:145 (gdb) info args this = (ProjectManager * const) 0x8197130 (gdb) info local langSupport = (KDevLanguageSupport *) 0x8ab2ec8 (gdb) next Warning: Cannot insert breakpoint -376. Error accessing memory address 0xc1f34dfb: Input/output error. (gdb) info thread 1 Thread -1211124048 (LWP 19923) 0xffffe410 in __kernel_vsyscall () (gdb) Process exited what kind of problem could cause this error? Is it because the application is trying to call code on an object that doesn't exist anymore in memory space? i'd like to help squash this bug. if you can't resolve it, could you at least give me some suggestions? tim at matchbin dot com. thanks