diff --git a/src/debugpy/_vendored/pydevd/pydevd.py b/src/debugpy/_vendored/pydevd/pydevd.py index 51f69be3..bc13f111 100644 --- a/src/debugpy/_vendored/pydevd/pydevd.py +++ b/src/debugpy/_vendored/pydevd/pydevd.py @@ -726,6 +726,8 @@ def __init__(self, set_as_global=True): self._local_thread_trace_func = threading.local() + self._client_socket = None + self._server_socket_ready_event = ThreadingEvent() self._server_socket_name = None @@ -1504,6 +1506,7 @@ def initialize_network(self, sock, terminate_on_socket_close=True): def connect(self, host, port): if host: s = start_client(host, port) + self._client_socket = s else: s = start_server(port) @@ -2551,6 +2554,10 @@ def dispose_and_kill_all_pydevd_threads(self, wait=True, timeout=0.5): except: pass finally: + if self._client_socket: + self._client_socket.close() + self._client_socket = None + pydev_log.debug("PyDB.dispose_and_kill_all_pydevd_threads: finished") def prepare_to_run(self):