Commit dfd34a9c authored by Terry Jan Reedy's avatar Terry Jan Reedy Committed by GitHub

bpo-35379: When exiting IDLE, catch any AttributeError. (GH-16212)

One happens when EditorWindow.close is called twice.
Printing a traceback, when IDLE is run from a terminal,
is useless and annoying.
parent 63dedef4
...@@ -2,6 +2,13 @@ What's New in IDLE 3.8.0 (since 3.7.0) ...@@ -2,6 +2,13 @@ What's New in IDLE 3.8.0 (since 3.7.0)
Released on 2019-10-20? Released on 2019-10-20?
====================================== ======================================
bpo-35379: When exiting IDLE, catch any AttributeError. One happens
when EditorWindow.close is called twice. Printing a traceback, when
IDLE is run from a terminal, is useless and annoying.
bpo-38183: To avoid test issues, test_idle ignores the user config
directory. It no longer tries to create or access .idlerc or any files
within. Users must run IDLE to discover problems with saving settings.
bpo-38077: IDLE no longer adds 'argv' to the user namespace when bpo-38077: IDLE no longer adds 'argv' to the user namespace when
initializing it. This bug only affected 3.7.4 and 3.8.0b2 to 3.8.0b4. initializing it. This bug only affected 3.7.4 and 3.8.0b2 to 3.8.0b4.
......
...@@ -1061,10 +1061,13 @@ class EditorWindow(object): ...@@ -1061,10 +1061,13 @@ class EditorWindow(object):
return self.io.maybesave() return self.io.maybesave()
def close(self): def close(self):
try:
reply = self.maybesave() reply = self.maybesave()
if str(reply) != "cancel": if str(reply) != "cancel":
self._close() self._close()
return reply return reply
except AttributeError: # bpo-35379: close called twice
pass
def _close(self): def _close(self):
if self.io.filename: if self.io.filename:
......
When exiting IDLE, catch any AttributeError. One happens when
EditorWindow.close is called twice. Printing a traceback, when IDLE is run
from a terminal, is useless and annoying.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment