Skip to content

Commit 7f86d97

Browse files
Merge pull request #339 from vim-vdebug/issue-335-lockup-when-closing-without-hitting-breakpoint
Issue 335 lockup when closing without hitting breakpoint
2 parents 612ed9b + 7fb1963 commit 7f86d97

2 files changed

Lines changed: 7 additions & 4 deletions

File tree

pythonx/vdebug/connection.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,7 @@ def run(self):
181181
s.setblocking(1)
182182
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
183183
s.bind((self.__host, self.__port))
184+
s.settimeout(5) # timeout after 5 seconds so we can check messages
184185
s.listen(5)
185186
while 1:
186187
try:
@@ -201,7 +202,7 @@ def run(self):
201202

202203
def __peek_for_exit(self):
203204
try:
204-
#self.log("Checking for exit")
205+
# self.log("Checking for exit")
205206
self.__check_exit(self.__message_q.get_nowait())
206207
except queue.Empty:
207208
pass

pythonx/vdebug/session.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,9 @@ def stop_listening(self):
5757
self.listener.stop()
5858
self.ui().say("Vdebug stopped waiting for a connection")
5959

60+
if self.__session:
61+
self.__session.close_connection()
62+
6063
def run(self):
6164
if self.is_connected():
6265
self.dispatch_event("run")
@@ -66,11 +69,10 @@ def run(self):
6669
def stop(self):
6770
if self.is_connected():
6871
self.__session.close_connection()
69-
elif self.is_open():
72+
elif self.is_listening():
7073
self.stop_listening()
74+
elif self.is_open():
7175
self.__ui.close()
72-
elif self.is_listening():
73-
self.listener.stop()
7476
else:
7577
self.__ui.say("Vdebug is not running")
7678

0 commit comments

Comments
 (0)