src/eric7/DebugClients/Python/DebugClientBase.py

branch
eric7
changeset 9542
0b04348749ab
parent 9482
a2bc06a54d9d
child 9653
e67609152c5e
diff -r 69167c94995f -r 0b04348749ab src/eric7/DebugClients/Python/DebugClientBase.py
--- a/src/eric7/DebugClients/Python/DebugClientBase.py	Sun Nov 27 17:47:20 2022 +0100
+++ b/src/eric7/DebugClients/Python/DebugClientBase.py	Sun Nov 27 17:59:59 2022 +0100
@@ -669,17 +669,14 @@
                                 _globals = self.debugMod.__dict__
                                 _locals = _globals
                             else:
-                                cf = self.currentThread.getCurrentFrame()
+                                cf = self.currentThread.getFrame()
                                 # program has terminated
                                 if cf is None:
                                     self.running = None
                                     _globals = self.debugMod.__dict__
                                     _locals = _globals
                                 else:
-                                    frmnr = self.framenr
-                                    while cf is not None and frmnr > 0:
-                                        cf = cf.f_back
-                                        frmnr -= 1
+                                    cf = self.currentThread.getFrame(self.framenr)
                                     _globals = cf.f_globals
                                     _locals = self.currentThread.getFrameLocals(
                                         self.framenr
@@ -1395,11 +1392,7 @@
         if scope == 0:
             self.framenr = frmnr
 
-        f = self.currentThread.getCurrentFrame()
-
-        while f is not None and frmnr > 0:
-            f = f.f_back
-            frmnr -= 1
+        f = self.currentThread.getFrame(frmnr)
 
         if f is None:
             if scope == 1:
@@ -1447,11 +1440,7 @@
             return
 
         frmnr += self.currentThread.skipFrames
-        f = self.currentThread.getCurrentFrame()
-
-        while f is not None and frmnr > 0:
-            f = f.f_back
-            frmnr -= 1
+        f = self.currentThread.getFrame(frmnr)
 
         if f is None:
             if scope == 1:
@@ -1734,14 +1723,8 @@
             localCompleter = Completer(localdict).complete
             self.__getCompletionList(text, localCompleter, completions)
 
-        cf = self.currentThread.getCurrentFrame()
-        frmnr = self.framenr
-        while cf is not None and frmnr > 0:
-            cf = cf.f_back
-            frmnr -= 1
-
+        cf = self.currentThread.getFrame(self.framenr)
         globaldict = self.debugMod.__dict__ if cf is None else cf.f_globals
-
         globalCompleter = Completer(globaldict).complete
         self.__getCompletionList(text, globalCompleter, completions)
 

eric ide

mercurial