]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
On OpenBSD, terminating IDLE with ctrl-c from the command line caused a
authorKurt B. Kaiser <kbk@shore.net>
Wed, 19 Jan 2005 06:23:51 +0000 (06:23 +0000)
committerKurt B. Kaiser <kbk@shore.net>
Wed, 19 Jan 2005 06:23:51 +0000 (06:23 +0000)
stuck subprocess MainThread because only the SocketThread was exiting.

M NEWS.txt
M run.py

Lib/idlelib/NEWS.txt
Lib/idlelib/run.py

index 05ea5a9447f01a1bb7d03e20ed3093a8dd2c6467..63d144b7743daf18fa87741f2e8c37a160a7a831 100644 (file)
@@ -3,13 +3,15 @@ What's New in IDLE 1.0.4?
 
 *Release date: XX-Jan-2005*
 
+- On OpenBSD, terminating IDLE with ctrl-c from the command line caused a
+  stuck subprocess MainThread because only the SocketThread was exiting.
+
 - Saving a Keyset w/o making changes (by using the "Save as New Custom Key Set"
   button) caused IDLE to fail on restart (no new keyset was created in
   config-keys.cfg).  Also true for Theme/highlights.  Python Bug 1064535.
 
 - checking sys.platform for substring 'win' was breaking IDLE docs on Mac
-  (darwin).  Also, Mac Safari browser requires full file:// URIs.  Backport of
-  fix for SF 900580.
+  (darwin).  Also, Mac Safari browser requires full file:// URIs.  SF 900580.
 
 - rpc.py:SocketIO - Large modules were generating large pickles when downloaded
   to the execution server.  The return of the OK response from the subprocess
index 767741acd0624a7759b32ef5fc0d5a30099015d7..b79cea968c77cde757e50647dee1dbee2fe446d6 100644 (file)
@@ -196,6 +196,7 @@ class MyRPCServer(rpc.RPCServer):
         Interrupt the MainThread and exit server if link is dropped.
 
         """
+        global quitting
         try:
             raise
         except SystemExit:
@@ -214,7 +215,8 @@ class MyRPCServer(rpc.RPCServer):
             traceback.print_exc(file=erf)
             print>>erf, '\n*** Unrecoverable, server exiting!'
             print>>erf, '-'*40
-            exit()
+            quitting = True
+            thread.interrupt_main()
 
 
 class MyHandler(rpc.RPCHandler):