Application: kdevelop (4.7.1) KDE Platform Version: 4.14.7 (Compiled from sources) Qt Version: 4.8.7 Operating System: Darwin 13.4.0 x86_64 Distribution (Platform): MacPorts Packages -- Information about the crash: - What I was doing when the application crashed: I quit the application, IIRC *without* having the Find/Replace dialog open. From what I can see, ~IPatchReview had already been called, as far as that's any indication. The statement causing the crash is the first line in ~GrepDialog(): KConfigGroup cg = ICore::self()->activeSession()->config()->group( "GrepDialog" ); Could it be that either config() or activeSession() or ICore::self() itself returned NULL, in otherwords, shouldn't this read if (ICore::self() && iCore::self()->activeSession() && ICore::self()->activeSession()->config()) { KConfigGroup cg = //etc ? -- Backtrace: Application: KDevelop (kdevelop), signal: Segmentation fault: 11 (lldb) process attach --pid 7094 Process 7094 stopped Executable module set to "/opt/local/bin/kdevelop". Architecture set to: x86_64-apple-macosx. (lldb) set set term-width 200 (lldb) thread info thread #1: tid = 0x3aa1d, 0x00007fff8914fe20 libsystem_kernel.dylib`__wait4 + 8, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP (lldb) bt all * thread #1: tid = 0x3aa1d, 0x00007fff8914fe20 libsystem_kernel.dylib`__wait4 + 8, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff8914fe20 libsystem_kernel.dylib`__wait4 + 8 frame #1: 0x0000000109f4094e libkdeui.5.dylib`KCrash::startProcess(int, char const**, bool) [inlined] startProcessInternal(argc=<unavailable>, directly=<unavailable>) + 265 at kcrash.cpp:556 frame #2: 0x0000000109f40845 libkdeui.5.dylib`KCrash::startProcess(argc=<unavailable>, argv=<unavailable>, waitAndExit=<unavailable>) + 21 at kcrash.cpp:538 frame #3: 0x0000000109f3fa79 libkdeui.5.dylib`KCrash::defaultCrashHandler(sig=<unavailable>) + 1209 at kcrash.cpp:441 frame #4: 0x00007fff886fd5aa libsystem_platform.dylib`_sigtramp + 26 frame #5: 0x000000011c1fb7bb kdevgrepview.so`GrepDialog::~GrepDialog(this=0x00007fc03c016190) + 59 at grepdialog.cpp:282 frame #6: 0x000000011c1fbcde kdevgrepview.so`GrepDialog::~GrepDialog() [inlined] GrepDialog::~GrepDialog(this=0x00007fc03c016190) + 14 at grepdialog.cpp:281 frame #7: 0x000000011c1fbcd9 kdevgrepview.so`GrepDialog::~GrepDialog(this=0x00007fc03c016190) + 9 at grepdialog.cpp:281 frame #8: 0x000000010b8a480f QtCore`QObjectPrivate::deleteChildren(this=0x00007fc034f72960) + 111 at qobject.cpp:2006 frame #9: 0x000000010aa9a2f3 QtGui`QWidget::~QWidget(this=0x00007fc034f727f0) + 1107 at qwidget.cpp:1679 frame #10: 0x0000000109fa92bd libkdeui.5.dylib`KMainWindow::~KMainWindow(this=0x00007fc034f727f0) + 381 at kmainwindow.cpp:473 frame #11: 0x00000001091cf66f libsublime.8.dylib`Sublime::MainWindow::~MainWindow(this=0x00007fc034f727f0, vtt=<unavailable>) + 127 at mainwindow.cpp:77 frame #12: 0x0000000108aef3cb libkdevplatformshell.8.dylib`KDevelop::MainWindow::~MainWindow(this=0x00007fc034f727f0, vtt=<unavailable>) + 187 at mainwindow.cpp:123 frame #13: 0x0000000108aef555 libkdevplatformshell.8.dylib`KDevelop::MainWindow::~MainWindow() [inlined] KDevelop::MainWindow::~MainWindow(this=0x00007fc034f727f0) + 12 at mainwindow.cpp:114 frame #14: 0x0000000108aef549 libkdevplatformshell.8.dylib`KDevelop::MainWindow::~MainWindow(this=0x00007fc034f727f0) + 9 at mainwindow.cpp:114 frame #15: 0x000000010b8a5198 QtCore`QObject::event(QEvent*) [inlined] qDeleteInEventHandler(o=0x00007fc034f727f0) + 14 at qobject.cpp:4379 frame #16: 0x000000010b8a518a QtCore`QObject::event(this=0x00007fc034f727f0, e=<unavailable>) + 698 at qobject.cpp:1203 frame #17: 0x000000010aaa6f42 QtGui`QWidget::event(this=0x00007fc034f727f0, event=0x00007fc03655cfe0) + 4050 at qwidget.cpp:8859 frame #18: 0x000000010add9fb1 QtGui`QMainWindow::event(this=0x00007fc034f727f0, event=0x00007fc03655cfe0) + 993 at qmainwindow.cpp:1478 frame #19: 0x0000000109ffd58a libkdeui.5.dylib`KXmlGuiWindow::event(this=0x00007fc034f727f0, ev=0x00007fc03655cfe0) + 26 at kxmlguiwindow.cpp:126 frame #20: 0x000000010aa56bdb QtGui`QApplicationPrivate::notify_helper(this=<unavailable>, receiver=0x00007fc034f727f0, e=0x00007fc03655cfe0) + 251 at qapplication.cpp:4565 frame #21: 0x000000010aa59b7d QtGui`QApplication::notify(this=<unavailable>, receiver=<unavailable>, e=<unavailable>) + 7693 at qapplication.cpp:4530 frame #22: 0x000000010b8910e6 QtCore`QCoreApplication::notifyInternal(this=<unavailable>, receiver=<unavailable>, event=<unavailable>) + 118 at qcoreapplication.cpp:955 frame #23: 0x000000010b891c4e QtCore`QCoreApplicationPrivate::sendPostedEvents(receiver=0x00007fc03655cfe0, event_type=0, data=0x00007fc0324107b0) + 686 at qcoreapplication.h:231 frame #24: 0x000000010b8916e9 QtCore`QCoreApplication::exec() + 281 at qcoreapplication.cpp:1233 frame #25: 0x0000000108a9fafa kdevelop`main(argc=<unavailable>, argv=<unavailable>) + 54122 at main.cpp:582 frame #26: 0x00007fff8915c5fd libdyld.dylib`start + 1 frame #27: 0x00007fff8915c5fd libdyld.dylib`start + 1 thread #2: tid = 0x3aa1e, 0x00007fff89150662 libsystem_kernel.dylib`kevent64 + 10, queue = 'com.apple.libdispatch-manager' frame #0: 0x00007fff89150662 libsystem_kernel.dylib`kevent64 + 10 frame #1: 0x00007fff8cd8f421 libdispatch.dylib`_dispatch_mgr_invoke + 239 frame #2: 0x00007fff8cd8f136 libdispatch.dylib`_dispatch_mgr_thread + 52 thread #3: tid = 0x3aa2a, 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10, name = 'com.apple.CFSocket.private' frame #0: 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10 frame #1: 0x00007fff89689a03 CoreFoundation`__CFSocketManager + 867 frame #2: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #3: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #4: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #4: tid = 0x3aa39, 0x00007fff8914ba1a libsystem_kernel.dylib`mach_msg_trap + 10 frame #0: 0x00007fff8914ba1a libsystem_kernel.dylib`mach_msg_trap + 10 frame #1: 0x00007fff8914ad18 libsystem_kernel.dylib`mach_msg + 64 frame #2: 0x00007fff8963df15 CoreFoundation`__CFRunLoopServiceMachPort + 181 frame #3: 0x00007fff8963d539 CoreFoundation`__CFRunLoopRun + 1161 frame #4: 0x00007fff8963ce75 CoreFoundation`CFRunLoopRunSpecific + 309 frame #5: 0x00007fff8e92b05e AppKit`_NSEventThread + 144 frame #6: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #7: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #8: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #5: tid = 0x3ab86, 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'QThread' frame #0: 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff89a56c3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010b7818a9 QtCore`QWaitConditionPrivate::wait(this=0x00007fc034d44fa0, time=1000) + 185 frame #3: 0x000000010b78171f QtCore`QWaitCondition::wait(this=0x00007fc034a85fa8, mutex=0x00007fc034a85fb0, time=1000) + 111 at qwaitcondition_unix.cpp:158 frame #4: 0x000000010bdff840 libkdevplatformlanguage.8.dylib`KDevelop::DUChainPrivate::CleanupThread::run(this=0x00007fc034a85f90) + 192 at duchain.cpp:283 frame #5: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #6: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #7: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #8: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #6: tid = 0x3ab87, 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10, name = 'OutputFilterThread' frame #0: 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10 frame #1: 0x000000010b8be9e4 QtCore`qt_safe_select(nfds=13, fdread=0x00007fc03302adb8, fdwrite=0x00007fc03302b050, fdexcept=0x00007fc03302b2e8, orig_timeout=<unavailable>) + 436 at qcore_unix.cpp:79 frame #2: 0x000000010b8c1ea5 QtCore`QEventDispatcherUNIXPrivate::doSelect(this=<unavailable>, flags=(i = 36), timeout=0x0000000000000000) + 757 at qeventdispatcher_unix.cpp:219 frame #3: 0x000000010b8c3896 QtCore`QEventDispatcherUNIX::processEvents(this=0x00007fc0350637e0, flags=(i = 36)) + 214 at qeventdispatcher_unix.cpp:936 frame #4: 0x000000010b88e47f QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) [inlined] QFlags<QEventLoop::ProcessEventsFlag>::QFlags(this=0x0000000100000024) + 9 at qglobal.h:2434 frame #5: 0x000000010b88e476 QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) [inlined] QFlags<QEventLoop::ProcessEventsFlag>::QFlags(this=0x0000000100000024) at qglobal.h:2434 frame #6: 0x000000010b88e476 QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) [inlined] QFlags<QEventLoop::ProcessEventsFlag>::operator|(f=<unavailable>) const + 59 at qeventloop.cpp:149 frame #7: 0x000000010b88e43b QtCore`QEventLoop::exec(this=0x000000011c824e50, flags=(i = 0)) + 427 at qeventloop.cpp:204 frame #8: 0x000000010b77e6e9 QtCore`QThread::exec(this=<unavailable>) + 217 at qthread.cpp:538 frame #9: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #10: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #11: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #12: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #7: tid = 0x3ab88, 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10, name = 'QProcessManager' frame #0: 0x00007fff8914f9aa libsystem_kernel.dylib`__select + 10 frame #1: 0x000000010b864fa5 QtCore`QProcessManager::run(this=0x000000010b9de048) + 133 at qprocess_unix.cpp:270 frame #2: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #3: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #4: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #5: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #8: tid = 0x3af43, 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'ThreadWeaver::Thread' frame #0: 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff89a56c3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010b7818bb QtCore`QWaitConditionPrivate::wait(this=<unavailable>, time=<unavailable>) + 203 frame #3: 0x000000010b78171f QtCore`QWaitCondition::wait(this=0x00007fc03268d578, mutex=0x00007fc03268d8c0, time=18446744073709551615) + 111 at qwaitcondition_unix.cpp:158 frame #4: 0x000000010b7302cb libthreadweaver.4.dylib`ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(this=<unavailable>, th=0x00007fc039d939f0) + 187 at WeaverImpl.cpp:370 frame #5: 0x000000010b733263 libthreadweaver.4.dylib`ThreadWeaver::WorkingHardState::applyForWork(this=0x00007fc03268d9c0, th=0x00007fc039d939f0, previous=<unavailable>) + 179 at WorkingHardState.cpp:68 frame #6: 0x000000010b73327c libthreadweaver.4.dylib`ThreadWeaver::WorkingHardState::applyForWork(this=<unavailable>, th=<unavailable>, previous=<unavailable>) + 204 at WorkingHardState.cpp:71 frame #7: 0x000000010b7316e7 libthreadweaver.4.dylib`ThreadWeaver::Thread::run(this=0x00007fc039d939f0) + 359 at Thread.cpp:98 frame #8: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #9: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #10: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #11: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #9: tid = 0x3af44, 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'ThreadWeaver::Thread' frame #0: 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff89a56c3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010b7818bb QtCore`QWaitConditionPrivate::wait(this=<unavailable>, time=<unavailable>) + 203 frame #3: 0x000000010b78171f QtCore`QWaitCondition::wait(this=0x00007fc03268d578, mutex=0x00007fc03268d8c0, time=18446744073709551615) + 111 at qwaitcondition_unix.cpp:158 frame #4: 0x000000010b7302cb libthreadweaver.4.dylib`ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(this=<unavailable>, th=0x00007fc035d40220) + 187 at WeaverImpl.cpp:370 frame #5: 0x000000010b733263 libthreadweaver.4.dylib`ThreadWeaver::WorkingHardState::applyForWork(this=0x00007fc03268d9c0, th=0x00007fc035d40220, previous=<unavailable>) + 179 at WorkingHardState.cpp:68 frame #6: 0x000000010b7316e7 libthreadweaver.4.dylib`ThreadWeaver::Thread::run(this=0x00007fc035d40220) + 359 at Thread.cpp:98 frame #7: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #8: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #9: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #10: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #10: tid = 0x46fce, 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'ThreadWeaver::Thread' frame #0: 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff89a56c3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010b7818bb QtCore`QWaitConditionPrivate::wait(this=<unavailable>, time=<unavailable>) + 203 frame #3: 0x000000010b78171f QtCore`QWaitCondition::wait(this=0x00007fc037742128, mutex=0x00007fc03c1a3ae0, time=18446744073709551615) + 111 at qwaitcondition_unix.cpp:158 frame #4: 0x000000010b7302cb libthreadweaver.4.dylib`ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(this=<unavailable>, th=0x00007fc03c1632e0) + 187 at WeaverImpl.cpp:370 frame #5: 0x000000010b733263 libthreadweaver.4.dylib`ThreadWeaver::WorkingHardState::applyForWork(this=0x00007fc03c1c6d60, th=0x00007fc03c1632e0, previous=<unavailable>) + 179 at WorkingHardState.cpp:68 frame #6: 0x000000010b7316e7 libthreadweaver.4.dylib`ThreadWeaver::Thread::run(this=0x00007fc03c1632e0) + 359 at Thread.cpp:98 frame #7: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #8: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #9: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #10: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #11: tid = 0x46fcf, 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'ThreadWeaver::Thread' frame #0: 0x00007fff8914f716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff89a56c3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010b7818bb QtCore`QWaitConditionPrivate::wait(this=<unavailable>, time=<unavailable>) + 203 frame #3: 0x000000010b78171f QtCore`QWaitCondition::wait(this=0x00007fc037742128, mutex=0x00007fc03c1a3ae0, time=18446744073709551615) + 111 at qwaitcondition_unix.cpp:158 frame #4: 0x000000010b7302cb libthreadweaver.4.dylib`ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(this=<unavailable>, th=0x00007fc03c211f60) + 187 at WeaverImpl.cpp:370 frame #5: 0x000000010b733263 libthreadweaver.4.dylib`ThreadWeaver::WorkingHardState::applyForWork(this=0x00007fc03c1c6d60, th=0x00007fc03c211f60, previous=<unavailable>) + 179 at WorkingHardState.cpp:68 frame #6: 0x000000010b7316e7 libthreadweaver.4.dylib`ThreadWeaver::Thread::run(this=0x00007fc03c211f60) + 359 at Thread.cpp:98 frame #7: 0x000000010b780232 QtCore`QThreadPrivate::start(arg=<unavailable>) + 386 at qthread_unix.cpp:352 frame #8: 0x00007fff89a54899 libsystem_pthread.dylib`_pthread_body + 138 frame #9: 0x00007fff89a5472a libsystem_pthread.dylib`_pthread_start + 137 frame #10: 0x00007fff89a58fc9 libsystem_pthread.dylib`thread_start + 13 thread #12: tid = 0x57bb6, 0x00007fff8914fe6a libsystem_kernel.dylib`__workq_kernreturn + 10 frame #0: 0x00007fff8914fe6a libsystem_kernel.dylib`__workq_kernreturn + 10 frame #1: 0x00007fff89a55f08 libsystem_pthread.dylib`_pthread_wqthread + 330 frame #2: 0x00007fff89a58fb9 libsystem_pthread.dylib`start_wqthread + 13 (lldb) detach (lldb) quit Process 7094 detached Possible duplicates by query: bug 348782, bug 348781, bug 348779, bug 348770, bug 348769. Reported using DrKonqi
Git commit b7c15acecda39681f1c9ae5c7da01989e9471d74 by Kevin Funk. Committed on 17/02/2017 at 07:38. Pushed by kfunk into branch '5.1'. grepview: Fix crash on exit with grep dialog open Thanks to René for the report! FIXED-IN: 5.1.0 Backtrace: ==13831==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7f58f2df4f49 bp 0x7ffe3f237920 sp 0x7ffe3f2374a0 T0) ==13831==The signal is caused by a READ memory access. ==13831==Hint: address points to the zero page. #0 0x7f58f2df4f48 in GrepDialog::~GrepDialog() /home/kfunk/devel/src/kf5/kdevplatform-stable/plugins/grepview/grepdialog.cpp:277:55 #1 0x7f58f2df5b98 in GrepDialog::~GrepDialog() /home/kfunk/devel/src/kf5/kdevplatform-stable/plugins/grepview/grepdialog.cpp:276:1 #2 0x7f591bf326cf in QObject::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b36cf) #3 0x7f591c88568a in QWidget::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1a268a) #4 0x7f591c83f8ab in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15c8ab) M +4 -0 plugins/grepview/grepdialog.cpp M +6 -1 plugins/grepview/grepdialog.h M +8 -0 plugins/grepview/grepviewplugin.cpp M +5 -1 plugins/grepview/grepviewplugin.h https://commits.kde.org/kdevplatform/b7c15acecda39681f1c9ae5c7da01989e9471d74
Hah, I knew the crash rang a bell, interesting how the bug survived for such a long time (without biting even me at least once a week)!