diff --git a/src/plugins/debugger/gdb/trkgdbadapter.cpp b/src/plugins/debugger/gdb/trkgdbadapter.cpp
index 2a994f8c51f53dfb7761a71c3de76ff3543c0ded..a4b69aa014a84a13ce1f80813643772c87abca01 100644
--- a/src/plugins/debugger/gdb/trkgdbadapter.cpp
+++ b/src/plugins/debugger/gdb/trkgdbadapter.cpp
@@ -2011,10 +2011,9 @@ void TrkGdbAdapter::handleDirectStep3(const TrkResult &result)
 
 void TrkGdbAdapter::cleanup()
 {
-    if (m_trkDevice.isOpen())
-        m_trkDevice.close();
-    if (m_gdbServer)
-        delete m_gdbServer;
+    m_trkDevice.close();
+    delete m_gdbServer;
+    m_gdbServer = 0;
 }
 
 void TrkGdbAdapter::shutdown()