56 |
56 |
57 self.newConnection.connect(self.on_newConnection) |
57 self.newConnection.connect(self.on_newConnection) |
58 port = self.serverPort() |
58 port = self.serverPort() |
59 ## NOTE: Need the port if started external in debugger: |
59 ## NOTE: Need the port if started external in debugger: |
60 print('BackgroundService listening on: %i' % port) |
60 print('BackgroundService listening on: %i' % port) |
|
61 if sys.platform == 'win32': |
|
62 pyCompare = Utilities.samefilepath |
|
63 else: |
|
64 pyCompare = Utilities.samepath |
|
65 |
61 for pyIdx, pyName in enumerate(['Python', 'Python3']): |
66 for pyIdx, pyName in enumerate(['Python', 'Python3']): |
62 interpreter = Preferences.getDebugger( |
67 interpreter = Preferences.getDebugger( |
63 pyName + "Interpreter") |
68 pyName + "Interpreter") |
64 |
69 |
65 if Utilities.samefilepath(interpreter, sys.executable): |
70 if pyCompare(interpreter, sys.executable): |
66 process = self.__startInternalClient(port) |
71 process = self.__startInternalClient(port) |
67 else: |
72 else: |
68 process = self.__startExternalClient(interpreter, port) |
73 process = self.__startExternalClient(interpreter, port) |
69 self.processes[pyIdx] = process |
74 self.processes[pyIdx] = process |
70 |
75 |
149 if connection is None: |
154 if connection is None: |
150 self.__postResult( |
155 self.__postResult( |
151 fx, fn, [ |
156 fx, fn, [ |
152 True, fn, 0, 0, '', |
157 True, fn, 0, 0, '', |
153 'No connection to Python{0} interpreter. ' |
158 'No connection to Python{0} interpreter. ' |
154 'Check your debugger settings.'.format(int(isPy3) + 2)]) |
159 'Check your debugger settings.'.format(int(isPy3) + 2), |
|
160 []]) |
155 else: |
161 else: |
156 header = struct.pack( |
162 header = struct.pack( |
157 b'!II', len(packedData), adler32(packedData) & 0xffffffff) |
163 b'!II', len(packedData), adler32(packedData) & 0xffffffff) |
158 connection.write(header) |
164 connection.write(header) |
159 connection.write(packedData) |
165 connection.write(packedData) |