diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2019-09-17 06:05:04 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-17 06:05:04 (GMT) |
commit | dfd34a9cd58e8150c324190f746de919e140abe8 (patch) | |
tree | 8bea5573aa4f327c8d55fd4e0410756f6fefe880 /Lib/idlelib/editor.py | |
parent | 63dedef48bba9d54f13b958237696505fa665796 (diff) | |
download | cpython-dfd34a9cd58e8150c324190f746de919e140abe8.zip cpython-dfd34a9cd58e8150c324190f746de919e140abe8.tar.gz cpython-dfd34a9cd58e8150c324190f746de919e140abe8.tar.bz2 |
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.
Diffstat (limited to 'Lib/idlelib/editor.py')
-rw-r--r-- | Lib/idlelib/editor.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Lib/idlelib/editor.py b/Lib/idlelib/editor.py index 838cb04..b969f8c 100644 --- a/Lib/idlelib/editor.py +++ b/Lib/idlelib/editor.py @@ -1061,10 +1061,13 @@ class EditorWindow(object): return self.io.maybesave() def close(self): - reply = self.maybesave() - if str(reply) != "cancel": - self._close() - return reply + try: + reply = self.maybesave() + if str(reply) != "cancel": + self._close() + return reply + except AttributeError: # bpo-35379: close called twice + pass def _close(self): if self.io.filename: |