[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-bugs
Subject:    [Bug 124662] New: KDevelop freezes when closing CPP project
From:       kdevelop-bugs-admin () barney ! cs ! uni-potsdam ! de
Date:       2006-03-31 16:38:16
Message-ID: 20060331183814.124662.timcharper () yahoo ! com
[Download RAW message or body]

------- 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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic