changeset: 99254:4eae64a9cd26 branch: 3.4 parent: 99250:1ddd77a5e8c8 user: Terry Jan Reedy date: Sat Nov 21 00:05:03 2015 -0500 files: Lib/idlelib/Debugger.py description: Issue 15348: Stop debugger engine (normally in user process) before closing debugger window in IDLE process. diff -r 1ddd77a5e8c8 -r 4eae64a9cd26 Lib/idlelib/Debugger.py --- a/Lib/idlelib/Debugger.py Fri Nov 20 19:36:43 2015 -0500 +++ b/Lib/idlelib/Debugger.py Sat Nov 21 00:05:03 2015 -0500 @@ -19,7 +19,7 @@ message = self.__frame2message(frame) try: self.gui.interaction(message, frame) - except (TclError, RuntimeError): + except TclError: # When closing debugger window with [x] in 3.x pass def user_exception(self, frame, info): @@ -105,10 +105,13 @@ self.interacting = 0 def close(self, event=None): + try: + self.quit() + except Exception: + pass if self.interacting: self.top.bell() return - self.abort_loop() if self.stackviewer: self.stackviewer.close(); self.stackviewer = None # Clean up pyshell if user clicked debugger control close widget.