https://bugs.kde.org/show_bug.cgi?id=425993
Igor Kushnir changed:
What|Removed |Added
Resolution|--- |FIXED
Latest Commit||https://invent.kde.org/kdev
||elop/kdevelop/commit/79c2b0
||f65c258cb0d931f55aa417bb5cb
||8714ca1
Status|ASSIGNED|RESOLVED
Version Fixed In||5.6.1
--- Comment #1 from Igor Kushnir ---
Git commit 79c2b0f65c258cb0d931f55aa417bb5cb8714ca1 by Igor Kushnir.
Committed on 15/10/2020 at 15:26.
Pushed by igorkushnir into branch '5.6'.
MIDebugger: check ICore::debugController() for nullptr
When a user exits KDevelop while debugging a program, a queued call to
MIDebugger::readyReadStandardOutput() may be invoked during or after
~CorePrivate(). If this happens after ~DebugController() (which is the
parent of BreakpointModel), a crash is likely, because
readyReadStandardOutput() indirectly calls
MIBreakpointController::updateFromDebugger(), which assumes that
BreakpointModel is not null (as do all other MIBreakpointController's
member functions).
Note that MIDebugger::readyReadStandardOutput() after ~DebugController()
can be invoked both from inside ~MIDebugger() (more precisely, from
inside the QProcess::waitForFinished() call) and before the destructor.
There is no need to process a debugger's standard output and risk a
crash when KDevelop has almost finished shutting down.
FIXED-IN: 5.6.1
M +10 -0plugins/debuggercommon/midebugger.cpp
https://invent.kde.org/kdevelop/kdevelop/commit/79c2b0f65c258cb0d931f55aa417bb5cb8714ca1
--
You are receiving this mail because:
You are watching all bug changes.