src/eric7/Debugger/DebuggerInterfacePython.py

branch
eric7
changeset 10289
490388ca210c
parent 10065
de4ae767b0e3
child 10309
507cafd305f6
diff -r 1f5c7f54c3cc -r 490388ca210c src/eric7/Debugger/DebuggerInterfacePython.py
--- a/src/eric7/Debugger/DebuggerInterfacePython.py	Mon Nov 06 19:12:33 2023 +0100
+++ b/src/eric7/Debugger/DebuggerInterfacePython.py	Tue Nov 07 11:03:13 2023 +0100
@@ -215,6 +215,11 @@
         multiprocessEnabled = (
             "--multiprocess" if Preferences.getDebugger("MultiProcessEnabled") else ""
         )
+        callTraceOptimization = (
+            "--call-trace-optimization"
+            if Preferences.getDebugger("PythonCallTraceOptimization")
+            else ""
+        )
 
         if Preferences.getDebugger("RemoteDbgEnabled"):
             ipaddr = self.debugServer.getHostAddress(False)
@@ -232,6 +237,8 @@
                     args.append(noencoding)
                 if multiprocessEnabled:
                     args.append(multiprocessEnabled)
+                if callTraceOptimization:
+                    args.append(callTraceOptimization)
                 args.extend([str(port), redirect, ipaddr])
                 if OSUtilities.isWindowsPlatform():
                     if not os.path.splitext(args[0])[1]:
@@ -301,6 +308,8 @@
                     args.append(noencoding)
                 if multiprocessEnabled:
                     args.append(multiprocessEnabled)
+                if callTraceOptimization:
+                    args.append(callTraceOptimization)
                 args.extend([str(port), "0", ipaddr])
                 args[0] = FileSystemUtilities.getExecutablePath(args[0])
                 process = self.__startProcess(
@@ -322,6 +331,8 @@
             args.append(noencoding)
         if multiprocessEnabled:
             args.append(multiprocessEnabled)
+        if callTraceOptimization:
+            args.append(callTraceOptimization)
         args.extend([str(port), redirect, ipaddr])
         process = self.__startProcess(
             interpreter, args, clientEnv, workingDir=workingDir
@@ -410,6 +421,11 @@
         multiprocessEnabled = (
             "--multiprocess" if Preferences.getDebugger("MultiProcessEnabled") else ""
         )
+        callTraceOptimization = (
+            "--call-trace-optimization"
+            if Preferences.getDebugger("PythonCallTraceOptimization")
+            else ""
+        )
 
         if venvName and venvName != self.debugServer.getProjectEnvironmentString():
             venvManager = ericApp().getObject("VirtualEnvManager")
@@ -445,6 +461,8 @@
                     args.append(noencoding)
                 if multiprocessEnabled:
                     args.append(multiprocessEnabled)
+                if callTraceOptimization:
+                    args.append(callTraceOptimization)
                 args.extend([str(port), redirect, ipaddr])
                 if OSUtilities.isWindowsPlatform():
                     if not os.path.splitext(args[0])[1]:
@@ -514,6 +532,8 @@
                     args.append(noencoding)
                 if multiprocessEnabled:
                     args.append(multiprocessEnabled)
+                if callTraceOptimization:
+                    args.append(callTraceOptimization)
                 args.extend([str(port), "0", ipaddr])
                 args[0] = FileSystemUtilities.getExecutablePath(args[0])
                 process = self.__startProcess(
@@ -535,6 +555,8 @@
             args.append(noencoding)
         if multiprocessEnabled:
             args.append(multiprocessEnabled)
+        if callTraceOptimization:
+            args.append(callTraceOptimization)
         args.extend([str(port), redirect, ipaddr])
         process = self.__startProcess(
             interpreter, args, clientEnv, workingDir=workingDir

eric ide

mercurial