Sat, 08 Oct 2016 21:01:32 +0200
Give the next debugger command to the thread where we are stopped at the moment.
--- a/DebugClients/Python/DebugBase.py Fri Oct 07 22:50:48 2016 +0200 +++ b/DebugClients/Python/DebugBase.py Sat Oct 08 21:01:32 2016 +0200 @@ -750,11 +750,15 @@ stack = self.getStack(frame, applyTrace=True) self.isBroken = True + self._dbgClient.lockClient() + self._dbgClient.currentThread = self + self._dbgClient.currentThreadExec = self self._dbgClient.sendResponseLine(stack) self._dbgClient.eventLoop() self.isBroken = False + self._dbgClient.unlockClient() def user_exception(self, frame, excinfo, unhandled=False): """
--- a/DebugClients/Python/DebugClientBase.py Fri Oct 07 22:50:48 2016 +0200 +++ b/DebugClients/Python/DebugClientBase.py Sat Oct 08 21:01:32 2016 +0200 @@ -715,15 +715,15 @@ self.sendJsonCommand("ResponseOK", {}) elif method == "RequestStep": - self.currentThread.step(True) + self.currentThreadExec.step(True) self.eventExit = True elif method == "RequestStepOver": - self.currentThread.step(False) + self.currentThreadExec.step(False) self.eventExit = True elif method == "RequestStepOut": - self.currentThread.stepOut() + self.currentThreadExec.stepOut() self.eventExit = True elif method == "RequestStepQuit":
--- a/DebugClients/Python/ThreadExtension.py Fri Oct 07 22:50:48 2016 +0200 +++ b/DebugClients/Python/ThreadExtension.py Sat Oct 08 21:01:32 2016 +0200 @@ -42,6 +42,8 @@ # the "current" thread, basically for variables view self.currentThread = self + # the thread we are at a breakpoint continuing at next command + self.currentThreadExec = self # special objects representing the main scripts thread and frame self.mainThread = self