diff --git a/src/plugins/debugger/gdb/gdbengine.cpp b/src/plugins/debugger/gdb/gdbengine.cpp
index 9450c741993872c1e4a926ee15d46e7c2e88f5cf..645fb7d5cd3f03b70b446269cd420ea23ba903c4 100644
--- a/src/plugins/debugger/gdb/gdbengine.cpp
+++ b/src/plugins/debugger/gdb/gdbengine.cpp
@@ -771,8 +771,12 @@ void GdbEngine::postCommandHelper(const GdbCommand &cmd)
                 if (cmd.flags & LosesChild)
                     setState(InferiorStopping_Kill);
                 debugMessage(_("CHILD ALREADY BEING INTERRUPTED"));
+                // FIXME
+                shutdown();
             } else if (state() == InferiorStopping_Kill) {
                 debugMessage(_("CHILD ALREADY BEING INTERRUPTED (KILL PENDING)"));
+                // FIXME
+                shutdown();
             } else if (state() == InferiorRunningRequested) {
                 if (cmd.flags & LosesChild)
                     setState(InferiorRunningRequested_Kill);