Give the next debugger command to the thread where we are stopped at the moment. debugger speed

Sat, 08 Oct 2016 21:01:32 +0200

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Sat, 08 Oct 2016 21:01:32 +0200
branch
debugger speed
changeset 5221
960afd19c1b6
parent 5209
cd058aa6af37
child 5222
6548dc1bfd48

Give the next debugger command to the thread where we are stopped at the moment.

DebugClients/Python/DebugBase.py file | annotate | diff | comparison | revisions
DebugClients/Python/DebugClientBase.py file | annotate | diff | comparison | revisions
DebugClients/Python/ThreadExtension.py file | annotate | diff | comparison | revisions
--- 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

eric ide

mercurial