diff -r c823968b9602 -r b43cf23955aa eric6/Debugger/DebugUI.py --- a/eric6/Debugger/DebugUI.py Thu May 20 18:17:29 2021 +0200 +++ b/eric6/Debugger/DebugUI.py Fri May 21 18:04:01 2021 +0200 @@ -1372,8 +1372,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): """ @@ -1395,8 +1396,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 @@ -1404,19 +1405,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): """