eric7/Debugger/DebugUI.py

branch
eric7
changeset 8363
e0890180e16a
parent 8358
144a6b854f70
child 8366
2a9f5153c438
diff -r 025f3037dcef -r e0890180e16a eric7/Debugger/DebugUI.py
--- a/eric7/Debugger/DebugUI.py	Sun May 23 11:55:39 2021 +0200
+++ b/eric7/Debugger/DebugUI.py	Fri May 21 18:04:01 2021 +0200
@@ -1373,8 +1373,9 @@
         @param debuggerId ID of the debugger backend
         @type str
         """
-        self.debugServer.remoteClientVariables(
-            debuggerId, 0, self.__localsVarFilterList)
+        if self.debugServer.isDebugging():
+            self.debugServer.remoteClientVariables(
+                debuggerId, 0, self.__localsVarFilterList)
     
     def __getClientVariables(self, debuggerId):
         """
@@ -1396,8 +1397,8 @@
         """
         Private method to write the clients variables to the user interface.
         
-        @param scope scope of the variables (-1 = empty locals, 1 = global,
-            0 = local)
+        @param scope scope of the variables
+            (-2 = no frame found, -1 = empty locals, 1 = global, 0 = local)
         @type int
         @param variables the list of variables from the client
         @type list
@@ -1405,19 +1406,20 @@
         @type str
         """
         if debuggerId == self.getSelectedDebuggerId():
-            self.ui.activateDebugViewer()
-            if scope > 0:
-                self.debugViewer.showVariables(variables, True)
-                if scope == 1:
-                    # now get the local variables
-                    self.debugServer.remoteClientVariables(
-                        self.getSelectedDebuggerId(),
-                        0, self.__localsVarFilterList)
-            elif scope == 0:
-                self.debugViewer.showVariables(variables, False)
-            elif scope == -1:
-                vlist = [(self.tr('No locals available.'), '', '')]
-                self.debugViewer.showVariables(vlist, False)
+            if scope > -2:
+                self.ui.activateDebugViewer()
+                if scope > 0:
+                    self.debugViewer.showVariables(variables, True)
+                    if scope == 1:
+                        # now get the local variables
+                        self.debugServer.remoteClientVariables(
+                            self.getSelectedDebuggerId(),
+                            0, self.__localsVarFilterList)
+                elif scope == 0:
+                    self.debugViewer.showVariables(variables, False)
+                elif scope == -1:
+                    vlist = [(self.tr('No locals available.'), '', '')]
+                    self.debugViewer.showVariables(vlist, False)
         
     def __clientVariable(self, scope, variables, debuggerId):
         """

eric ide

mercurial