src/eric7/Debugger/DebugServer.py

branch
eric7-maintenance
changeset 11019
27cd57e98461
parent 10814
ba20efe10336
parent 10985
91243eb0390d
child 11063
bb05d1db9286
--- a/src/eric7/Debugger/DebugServer.py	Thu Oct 03 17:06:51 2024 +0200
+++ b/src/eric7/Debugger/DebugServer.py	Thu Oct 31 10:54:33 2024 +0100
@@ -497,7 +497,7 @@
         venvName="",
         workingDir="",
         configOverride=None,
-        startRemote=None,
+        startViaServer=None,
     ):
         """
         Public method to start a debug client.
@@ -518,7 +518,7 @@
         @param configOverride dictionary containing the global config override data
             (defaults to None)
         @type dict (optional)
-        @param startRemote flag indicating to start the client via an eric-ide server
+        @param startViaServer flag indicating to start the client via an eric-ide server
             (defaults to None)
         @type bool (optional)
         """
@@ -567,7 +567,7 @@
                         self.__originalPathString,
                         workingDir=workingDir,
                         configOverride=configOverride,
-                        startRemote=startRemote,
+                        startViaServer=startViaServer,
                     )
                 else:
                     if not venvName and project.getProjectData(dataKey="EMBEDDED_VENV"):
@@ -584,7 +584,7 @@
                         self.__originalPathString,
                         workingDir=workingDir,
                         configOverride=configOverride,
-                        startRemote=startRemote,
+                        startViaServer=startViaServer,
                     )
             else:
                 (
@@ -598,7 +598,7 @@
                     self.__originalPathString,
                     workingDir=workingDir,
                     configOverride=configOverride,
-                    startRemote=startRemote,
+                    startViaServer=startViaServer,
                 )
 
             if self.clientProcess:
@@ -616,7 +616,7 @@
                 elif self.__autoClearShell:
                     self.__autoClearShell = False
                     self.remoteBanner()
-            elif startRemote:
+            elif startViaServer:
                 self.__ericServerDebugging = True
                 if self.lastClientType != self.clientType:
                     self.lastClientType = self.clientType
@@ -1119,7 +1119,7 @@
             runInConsole=runInConsole,
             venvName=venvName,
             configOverride=configOverride,
-            startRemote=FileSystemUtilities.isRemoteFileName(fn),
+            startViaServer=FileSystemUtilities.isRemoteFileName(fn),
         )
 
         self.setCallTraceEnabled("", enableCallTrace)
@@ -1210,7 +1210,7 @@
             runInConsole=runInConsole,
             venvName=venvName,
             configOverride=configOverride,
-            startRemote=FileSystemUtilities.isRemoteFileName(fn),
+            startViaServer=FileSystemUtilities.isRemoteFileName(fn),
         )
 
         self.remoteEnvironment(env)
@@ -1293,7 +1293,7 @@
             runInConsole=runInConsole,
             venvName=venvName,
             configOverride=configOverride,
-            startRemote=FileSystemUtilities.isRemoteFileName(fn),
+            startViaServer=FileSystemUtilities.isRemoteFileName(fn),
         )
 
         self.remoteEnvironment(env)
@@ -1376,7 +1376,7 @@
             runInConsole=runInConsole,
             venvName=venvName,
             configOverride=configOverride,
-            startRemote=FileSystemUtilities.isRemoteFileName(fn),
+            startViaServer=FileSystemUtilities.isRemoteFileName(fn),
         )
 
         self.remoteEnvironment(env)
@@ -1942,7 +1942,7 @@
             self.startClient(False, forProject=self.__forProject)
         if self.passive:
             self.__createDebuggerInterface("None")
-            self.signalClientOutput(self.tr("\nNot connected\n"))
+            self.signalClientOutput(self.tr("\nNot connected\n"), "")
             self.signalClientStatement(False, "")
         self.running = False
         self.__ericServerDebugging = False
@@ -2106,13 +2106,31 @@
         @param debuggerId ID of the debugger backend
         @type str
         """
-        self.appendStdout.emit(self.tr("Passive debug connection received\n"))
-        self.passiveClientExited = False
-        self.debugging = True
-        self.running = True
-        self.__restoreBreakpoints(debuggerId)
-        self.__restoreWatchpoints(debuggerId)
-        self.passiveDebugStarted.emit(fn, reportAllExceptions)
+        if self.passive:
+            self.appendStdout.emit(self.tr("Passive debug connection received\n"))
+            self.passiveClientExited = False
+            self.debugging = True
+            self.running = True
+            self.__restoreBreakpoints(debuggerId)
+            self.__restoreWatchpoints(debuggerId)
+            self.passiveDebugStarted.emit(fn, reportAllExceptions)
+        else:
+            self.appendStdout.emit(
+                self.tr(
+                    "Passive debug connection received while not in passive mode.\n"
+                )
+            )
+            EricMessageBox.critical(
+                None,
+                self.tr("Debug Client Connection"),
+                self.tr(
+                    "Passive debug client connection received while not in passive"
+                    " mode. Enable this mode on the 'Debugger General' configuration"
+                    " page. The connection will be rejected."
+                ),
+            )
+            self.shutdownServer()
+            self.startClient(False, forProject=self.__forProject)
 
     def __passiveShutDown(self):
         """

eric ide

mercurial