https://bugs.kde.org/show_bug.cgi?id=357630
Bug ID: 357630 Summary: crash when exiting with parser running Product: kdevelop Version: 4.90.90 Platform: Compiled Sources OS: OS X Status: UNCONFIRMED Severity: normal Priority: NOR Component: Language Support: CPP (Clang-based) Assignee: kdevelop-bugs-n...@kde.org Reporter: rjvber...@gmail.com My first crash report for KDevelop5 ... The IDE was parsing its own source tree (git working copy) after I had run cmake on the project externally (an editor for cmake options is still lacking in the project config). I quit the application with the parser still running, and got the backtrace copied below Reproducible: Didn't try Steps to Reproduce: 1. open a project, say kdevelop itself 2. rerun cmake in the build directory, from a terminal 3. wait until the parser is working and quit KDevelop Actual Results: Process: kdevelop [75487] Path: /Applications/MacPorts/*/kdevelop.app/Contents/MacOS/kdevelop Identifier: org.kde.KDevelop Version: 4.90 (4.90) Code Type: X86-64 (Native) Parent Process: tcsh [37199] Responsible: X11.bin [36815] User ID: 505 Date/Time: 2016-01-06 21:34:40.587 +0100 OS Version: Mac OS X 10.9.5 (13F1134) Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Application Specific Information: abort() called *** error for object 0x7fe89e707ce0: pointer being freed was not allocated Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libsystem_kernel.dylib 0x00007fff91dbc866 __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff8ee4035c pthread_kill + 92 2 libsystem_c.dylib 0x00007fff89e5cb1a abort + 125 3 libsystem_malloc.dylib 0x00007fff9434207f free + 411 4 libKF5ThreadWeaver.5.dylib 0x00000001123ae38a ThreadWeaver::Private::Job_Private::~Job_Private() + 74 (job_p.cpp:44) 5 libKF5ThreadWeaver.5.dylib 0x00000001123ad929 ThreadWeaver::Job::~Job() + 105 (job.cpp:68) 6 libKF5ThreadWeaver.5.dylib 0x00000001123ae6a9 ThreadWeaver::IdDecorator::~IdDecorator() + 41 (iddecorator.cpp:52) 7 libKF5ThreadWeaver.5.dylib 0x00000001123ac337 QtMetaTypePrivate::QMetaTypeFunctionHelper<QSharedPointer<ThreadWeaver::JobInterface>, true>::Destruct(void*) + 39 (qatomic_x86.h:214) 8 org.qt-project.QtCore 0x0000000110adc8bf QMetaType::destroy(int, void*) + 127 (qmetatype.cpp:1726) 9 org.qt-project.QtCore 0x0000000110af1c89 QMetaCallEvent::~QMetaCallEvent() + 73 (qobject.cpp:463) 10 org.qt-project.QtCore 0x0000000110af1d2e QMetaCallEvent::~QMetaCallEvent() + 14 (qobject.cpp:461) 11 org.qt-project.QtCore 0x0000000110acba36 QCoreApplication::removePostedEvents(QObject*, int) + 1622 (qvarlengtharray.h:108) 12 org.qt-project.QtCore 0x0000000110af0fd4 QObjectPrivate::~QObjectPrivate() + 228 (qobject.cpp:237) 13 org.qt-project.QtCore 0x0000000110af10fe QObjectPrivate::~QObjectPrivate() + 14 (qobject.cpp:219) 14 org.qt-project.QtCore 0x0000000110af2b71 QObject::~QObject() + 1841 (qscopedpointer.h:54) 15 libKDevPlatformLanguage.10.dylib 0x00000001111cbad2 KDevelop::BackgroundParser::~BackgroundParser() + 82 (backgroundparser.cpp:485) 16 org.qt-project.QtCore 0x0000000110af2d75 QObjectPrivate::deleteChildren() + 245 (qobject.cpp:1943) 17 org.qt-project.QtCore 0x0000000110af2b40 QObject::~QObject() + 1792 (qobject.cpp:1027) 18 libKDevPlatformShell.10.dylib 0x000000010d5b9525 KDevelop::LanguageController::~LanguageController() + 53 (languagecontroller.cpp:154) 19 libKDevPlatformShell.10.dylib 0x000000010d5854e4 KDevelop::CorePrivate::~CorePrivate() + 116 (qsharedpointer_impl.h:588) 20 libKDevPlatformShell.10.dylib 0x000000010d586444 KDevelop::Core::~Core() + 116 (core.cpp:384) 21 libKDevPlatformShell.10.dylib 0x000000010d58648e KDevelop::Core::~Core() + 14 (core.cpp:380) 22 org.qt-project.QtCore 0x0000000110af3748 QObject::event(QEvent*) + 776 (qobject.cpp:4455) 23 org.qt-project.QtWidgets 0x000000010f80a53b QApplicationPrivate::notify_helper(QObject*, QEvent*) + 251 (qapplication.cpp:3716) 24 org.qt-project.QtWidgets 0x000000010f80d8f4 QApplication::notify(QObject*, QEvent*) + 8212 (qapplication.cpp:3681) 25 org.qt-project.QtCore 0x0000000110acb0db QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 971 (qthread_p.h:291) 26 org.qt-project.QtCore 0x0000000110acaa2c QCoreApplication::exec() + 412 (qcoreapplication.cpp:1240) 27 kdevelop.bin 0x000000010d53132a main + 54426 (main.cpp:677) 28 libdyld.dylib 0x00007fff8e8b05fd start + 1 Expected Results: no crash, no abort, no double/illegal free? This has nothing to do with unloading plugins, correct? FWIW, Qt5 will stop doing that at exit in a future release to avoid certain types of crashes at exit, and I have observed that this approach also prevents crashes in certain KF5 applications like Kate. -- You are receiving this mail because: You are watching all bug changes.