summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Lib/idlelib/PyShell.py6
-rw-r--r--Misc/NEWS5
2 files changed, 9 insertions, 2 deletions
diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
index 6b75a8d4d0..d7edce501f 100644
--- a/Lib/idlelib/PyShell.py
+++ b/Lib/idlelib/PyShell.py
@@ -1403,8 +1403,10 @@ def main():
if enable_edit:
if not (cmd or script):
- for filename in args:
- flist.open(filename)
+ for filename in args[:]:
+ if flist.open(filename) is None:
+ # filename is a directory actually, disconsider it
+ args.remove(filename)
if not args:
flist.new()
if enable_shell:
diff --git a/Misc/NEWS b/Misc/NEWS
index 94f3fc8554..fe37f1038d 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,11 @@ What's New in Python 3.3.0 Alpha 2?
Core and Builtins
-----------------
+- Issue #3573: IDLE hangs when passing invalid command line args
+ (directory(ies) instead of file(s))
+
+ Thanks to Guilherme Polo for patch and to Roger Serwy for review.
+
- Issue #1683368: object.__new__ and object.__init__ raise a TypeError if they
are passed arguments and their complementary method is not overridden.