| Summary: | crashes when saving header file (.h) | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | Stefan Schmidt <s-kde> |
| Component: | Language Support: CPP (old) | Assignee: | KDevelop Developers <kdevelop-devel> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | jan_mentzel |
| Priority: | NOR | ||
| Version First Reported In: | git master | ||
| Target Milestone: | --- | ||
| Platform: | openSUSE | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Stefan Schmidt
2003-06-07 12:16:35 UTC
"Save as" using another filename works as expected, but when re-saving as the .h that is in the project -> crash. Comment removeWithReferences() call on line 43 od parts/cppsupport/store_walker.cpp, recompile and the problem will go away :) Got another bt that seams related:
[New Thread 1024 (LWP 1866)]
[New Thread 2049 (LWP 1868)]
[New Thread 1026 (LWP 1869)]
0x412de099 in wait4 () from /lib/libc.so.6
#0 0x412de099 in wait4 () from /lib/libc.so.6
#1 0x41358bd8 in __DTOR_END__ () from /lib/libc.so.6
#2 0x41192072 in waitpid () from /lib/libpthread.so.0
#3 0x40946b4e in KCrash::defaultCrashHandler ()
from /opt/kde3/lib/libkdecore.so.4
#4 0x4118fa74 in pthread_sighandler () from /lib/libpthread.so.0
#5 <signal handler called>
#6 0x40e9a4b9 in QString::QString () from /usr/lib/qt3/lib/libqt-mt.so.3
#7 0x403acfd8 in ParsedItem::declaredInFile (this=0x0) at parseditem.h:200
#8 0x4037e566 in ClassStore::removeWithReferences (this=0x819e8e0,
fileName=@0xbfffe69c) at classstore.cpp:538
#9 0x41f265d1 in CppDriver::fileParsed (this=0xbfffe6a0,
fileName=@0xbfffe69c)
at cppsupportpart.cpp:123
#10 0x4203083c in Driver::parseFile (this=0xbfffe6a0, fileName=@0xbfffe69c,
onlyPreProcess=false, force=false) at driver.cpp:281
#11 0x41ec9299 in CppSupportPart::parseProject (this=0x8519050)
at cppsupportpart.cpp:745
#12 0x41eca724 in CppSupportPart::slotProjectCompiled (this=0x8519050)
at cppsupportpart.cpp:975
#13 0x41ecc0a9 in CppSupportPart::qt_invoke (this=0x8519050, _id=13,
_o=0xbfffe7d8) at cppsupportpart.moc:194
#14 0x40c923c4 in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0x40c922fe in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0x0809cbb9 in KDevProject::projectCompiled (this=0x8afe4e0)
at kdevproject.moc:139
#17 0x424a91a9 in AutoProjectPart::slotCommandFinished (this=0x8afe4e0,
command=@0x9ed7ce8) at autoprojectpart.cpp:881
#18 0x424a992b in AutoProjectPart::qt_invoke (this=0x8afe4e0, _id=18,
_o=0xbfffe954) at autoprojectpart.moc:144
#19 0x40c923c4 in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0x40c926db in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#21 0x0809d8ef in KDevMakeFrontend::commandFinished (this=0x819a600,
t0=@0x8208ac0) at kdevmakefrontend.moc:90
#22 0x41bdee23 in MakeWidget::slotProcessExited (this=0x82088c8)
at makewidget.cpp:536
#23 0x41be0a49 in MakeWidget::qt_invoke (this=0x82088c8, _id=156,
_o=0xbfffeac4) at makewidget.moc:155
#24 0x40c923c4 in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#25 0x409146da in KProcess::processExited () from
/opt/kde3/lib/libkdecore.so.4
#26 0x409136d1 in KProcess::processHasExited ()
from /opt/kde3/lib/libkdecore.so.4
#27 0x4091544d in KProcessController::slotDoHousekeeping ()
from /opt/kde3/lib/libkdecore.so.4
#28 0x40915863 in KProcessController::qt_invoke ()
from /opt/kde3/lib/libkdecore.so.4
#29 0x40c923c4 in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#30 0x40c9254b in QObject::activate_signal ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#31 0x40eee23d in QSocketNotifier::activated ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#32 0x40ca922f in QSocketNotifier::event () from
/usr/lib/qt3/lib/libqt-mt.so.3
#33 0x40c4709a in QApplication::internalNotify ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#34 0x40c46ea7 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#35 0x408e4dcb in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#36 0x40c2afd7 in QEventLoop::activateSocketNotifiers ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#37 0x40c0d4cb in QEventLoop::processEvents ()
from /usr/lib/qt3/lib/libqt-mt.so.3
#38 0x40c57520 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#39 0x40c57467 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#40 0x40c47216 in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#41 0x0806fc24 in main (argc=1, argv=0xbffff234) at main.cpp:124
#42 0x412539ed in __libc_start_main () from /lib/libc.so.6
Updated to latest CVS. here is the new bt:
#0 0x412de099 in wait4 () from /lib/libc.so.6
#1 0x41358bd8 in __DTOR_END__ () from /lib/libc.so.6
#2 0x41192072 in waitpid () from /lib/libpthread.so.0
#3 0x40946b4e in KCrash::defaultCrashHandler ()
from /opt/kde3/lib/libkdecore.so.4
#4 0x4118fa74 in pthread_sighandler () from /lib/libpthread.so.0
#5 <signal handler called>
#6 0x403a6073 in QMapIterator<QString, ParsedClass *>::inc (this=0xbfffe434)
at /usr/lib/qt3/include/qmap.h:171
#7 0x403a8280 in QMapIterator<QString, ParsedClass *>::operator++ (
this=0xbfffe434) at /usr/lib/qt3/include/qmap.h:143
#8 0x4037e5e0 in ClassStore::removeWithReferences (this=0x820af98,
fileName=@0xbfffe6ac) at classstore.cpp:540
#9 0x41f265d1 in CppDriver::fileParsed (this=0xbfffe6b0,
fileName=@0xbfffe6ac)
at cppsupportpart.cpp:123
#10 0x4203083c in Driver::parseFile (this=0xbfffe6b0, fileName=@0xbfffe6ac,
onlyPreProcess=false, force=false) at driver.cpp:281
#11 0x41ec9299 in CppSupportPart::parseProject (this=0x851bb28)
at cppsupportpart.cpp:745
#12 0x41eca724 in CppSupportPart::slotProjectCompiled (this=0x851bb28)
at cppsupportpart.cpp:975
#13 0x41ecc0a9 in CppSupportPart::qt_invoke (this=0x851bb28, _id=13,
_o=0xbfffe7e8) at cppsupportpart.moc:194
Comment out two removeWithReferences() calls: -on line 43 of parts/cppsupport/store_walker.cpp -on line 123 of parts/cppsupport/cppsupportpart.cpp Recompile Gideon and the problem will go away :) I don't have crushes in my SuSE 8.2 even with removeWithReferences() calls enabled *** Bug 60948 has been marked as a duplicate of this bug. *** OK, so it's maybe a problem of the gcc compiler or glib library ... or something else that ships with SuSE < 8.2 Because so far I've see this happen or more than a SuSE box. So could you all please say your versions (SuSE, gcc, KDE, QT etc) so that we could narrow it down? Thanks. "SuSE 8.0 Proffesional Update" updated from a SuSE 6.2 or so. gcc-2.95.3-216 glibc-2.2.5-177 binutils-2.11.92.0.10-89 $ cat /proc/version Linux version 2.4.18-4GB (root@Pentium.suse.de) (gcc version 2.95.3 20010315 (SuSE)) #1 Wed Mar 27 13:57:05 UTC 2002 $ rpm -qa | grep "^kde" kdesdk3-3.1.2-15 kdebase3-devel-3.1.2-13 kdedb-0.1-394 kdebase3-nsplugin-3.1.2-13 kdebase3-ksysguardd-3.1.2-13 kdelibs3-devel-3.1.2-3 kdegraphics3-3.1.2-4 kde2-compat-2.2.2-87 kdemultimedia3-3.1.2-1 kdeutils3-3.1.2-5 kdenetwork3-3.1.2-3 kdebase3-3.1.2-13 kdelibs3-3.1.2-3 kdelibs3-devel-doc-3.1.2-3 kde3-i18n-de-3.1.2-0 $ rpm -qa | grep "^qt" qt3-postgresql-3.1.2-42 qt3-mysql-3.1.2-42 qt-extensions-2.3.2-138 qt-2.3.2-138 qt3-non-mt-3.1.2-36 qt3-3.1.2-37 qt3-devel-tools-3.1.2-42 qt3-devel-3.1.2-37 qt-freebies-1.7-384 qt3-devel-doc-3.1.2-37 the kde3.1.2 and the qt3 rpms are the updates for SuSE8.0 on www.kde.org "SuSE 8.0 Proffesional" gcc-2.95.3 20010315 $ cat /proc/version Linux version 2.4.18-64GB-SMP (root@SMP_X86.suse.de) $ rpm -qa | grep "^kde" kdenetwork3-3.1.2-3 kdebase3-SuSE-0.0.3-113 kdevelop3-2.1.5-73 kdegraphics3-3.1.2-4 kdegraphics3-devel-3.1.2-4 kdebase3-nsplugin-3.1.2-23 kdeutils3-3.1.2-5 kdeadmin3-3.1.2-4 kdebase3-ksysguardd-3.1.2-23 kde3-i18n-en_GB-3.1.2-0 kdebase3-devel-3.1.2-23 kdemultimedia3-3.1.2-4 kdepim3-3.1.2-4 kdelibs3-devel-3.1.2-16 kdelibs3-devel-doc-3.1.2-16 kde2-compat-2.2.2-449 kdelibs3-3.1.2-16 kdesdk3-3.1.2-15 kdeaddons3-3.1.2-12 kdegames3-3.1.2-3 kdebase3-3.1.2-23 kdeartwork3-3.1.2-37 $ rpm -qa | grep "^qt" qtcups-2.0-337 qt-2.3.2-213 qt3-non-mt-3.1.2-42 qt3-devel-3.1.2-37 qt3-3.1.2-37 qt3-devel-tools-3.1.2-51 qt3-devel-doc-3.1.2-37 SuSE Linux 7.3 (i386) gcc version 2.95.3 20010315 (SuSE) Linux version 2.4.18-4GB (root@notebook) (gcc version 2.95.3 20010315 (SuSE)) #3 stefan@notebook:~> rpm -qa | grep "^kde" kdebase3-devel-doc-3.0.4-0 kde-i18n-de-2.2.1-27 kde-i18n-2.2.1-27 kdeartwork-2.2.2-3 kdebase-devel-2.2.2-8 kdegraphics-devel-2.2.2-4 kdebase-devel-doc-2.2.2-8 kdegraphics-2.2.2-4 kdebase3-nsplugin-3.1.2-13 kdenetwork-devel-2.2.2-1 kdemultimedia-devel-2.2.2-2 kdelibs-devel-2.2.2-4 kdenetwork-lisa-2.2.2-1 kdebindings3-3.1-44 kdeutils-2.2.2-5 kdeutils3-devel-3.1.2-5 kdebindings3-mozilla-3.1-44 kdegraphics3-devel-3.1.2-4 kdenetwork3-lisa-3.1-60 kdeadmin-2.2.2-2 kde3-i18n-fr-3.1-0 kdegames-2.2.2-5 kde3-i18n-it-3.1-0 kdelibs-devel-doc-2.2.2-4 kdepim3-3.1.1-104 kdepim-2.2.2-0 kdesdk-2.2.2-5 kdesdk-devel-2.2.2-5 kdetoys-2.2.2-2 kdebase3-ksysguardd-3.1.2-13 kdenetwork3-devel-3.0.4-0 kdepim3-kpilot-3.0.4-0 kdesdk3-3.1.2-15 kdesdk3-devel-3.1.2-15 kdegraphics3-kooka-3.0.1-20 kdetoys3-3.1.2-5 kdeutils3-3.1.2-5 kdeaddons3-3.1.2-9 kdelibs3-devel-3.1.2-3 kde3-i18n-de-3.1.2-0 kde2-compat-2.2.2-239 kdeedu3-3.1.2-5 kdegraphics3-3.1.2-4 kdemultimedia3-3.1.2-1 kdeadmin3-3.1.2-4 kdebase3-devel-3.1.2-13 kdegames3-3.1.2-3 kdemultimedia3-devel-3.1.2-3 kdenetwork3-3.1.2-3 kdebase3-3.1.2-13 kdeartwork3-3.1.2-20 kdelibs3-3.1.2-3 kdelibs3-devel-doc-3.1.2-3 stefan@notebook:~> rpm -qa | grep "^qt" qt3-mysql-3.1.2-42 qt3-postgresql-3.1.2-42 qt3-unixODBC-3.1.2-42 qt3-extensions-3.1.2-42 qt-devel-2.3.1-60 qt-2.3.1-60 qt3-non-mt-3.1.2-3 qt-devel-doc-2.3.1-39 qt-designer-2.3.1-92 qt-extensions-2.3.1-60 qt3-3.1.2-37 qt3-devel-tools-3.1.2-5 qtlib-1.45-296 qt3-devel-doc-3.1.2-37 qt3-devel-3.1.2-37 qt3-man-3.1.2-42 Solved by Roberto's new class store |