#8900: merge with 3.3.
diff --git a/Lib/idlelib/MultiCall.py b/Lib/idlelib/MultiCall.py
index 47f402d..64729ea 100644
--- a/Lib/idlelib/MultiCall.py
+++ b/Lib/idlelib/MultiCall.py
@@ -170,8 +170,9 @@
break
ishandlerrunning[:] = []
# Call all functions in doafterhandler and remove them from list
- while doafterhandler:
- doafterhandler.pop()()
+ for f in doafterhandler:
+ f()
+ doafterhandler[:] = []
if r:
return r
return handler
diff --git a/Misc/NEWS b/Misc/NEWS
index 03b3c4f..3472151 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -297,6 +297,9 @@
Library
-------
+- Issue #8900: Using keyboard shortcuts in IDLE to open a file no longer
+ raises an exception.
+
- Issue #6649: Fixed missing exit status in IDLE. Patch by Guilherme Polo.
- Issue #17435: threading.Timer's __init__ method no longer uses mutable