From b68b0201bb5782a843adcabdfa986f9dd7ab2144 Mon Sep 17 00:00:00 2001 From: Elizaveta Shashkova Date: Wed, 29 Jul 2015 17:03:22 +0300 Subject: [PATCH] If one thread finished its work, debugger loses access to other suspended threads (PY-16525) After killing thread check if there are other suspended threads and notify UI of it. --- .../jetbrains/python/debugger/pydev/RemoteDebugger.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/python/pydevSrc/com/jetbrains/python/debugger/pydev/RemoteDebugger.java b/python/pydevSrc/com/jetbrains/python/debugger/pydev/RemoteDebugger.java index fce54b4e6581..6cd273c87d39 100644 --- a/python/pydevSrc/com/jetbrains/python/debugger/pydev/RemoteDebugger.java +++ b/python/pydevSrc/com/jetbrains/python/debugger/pydev/RemoteDebugger.java @@ -591,6 +591,13 @@ public class RemoteDebugger implements ProcessDebugger { thread.updateState(PyThreadInfo.State.KILLED, null); myThreads.remove(id); } + for (PyThreadInfo threadInfo: myThreads.values()) { + // notify UI of suspended threads left in debugger if one thread finished its work + if ((threadInfo != null) && (threadInfo.getState() == PyThreadInfo.State.SUSPENDED)) { + myDebugProcess.threadResumed(threadInfo); + myDebugProcess.threadSuspended(threadInfo); + } + } break; } case AbstractCommand.SHOW_CONSOLE: {