summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2006-02-19 09:51:27 (GMT)
committerGeorg Brandl <georg@python.org>2006-02-19 09:51:27 (GMT)
commite466217ab954c5a53fc2e0b78876385362120900 (patch)
treef325d50baeb8488a113024c10494d50874d3f4ec
parente9b1949f70ff985e17e1ce5592b59073d101bbab (diff)
downloadcpython-e466217ab954c5a53fc2e0b78876385362120900.zip
cpython-e466217ab954c5a53fc2e0b78876385362120900.tar.gz
cpython-e466217ab954c5a53fc2e0b78876385362120900.tar.bz2
Patch #1337756: fileinput now accepts Unicode filenames.
-rw-r--r--Lib/fileinput.py2
-rw-r--r--Lib/test/test_fileinput.py10
-rw-r--r--Misc/NEWS2
3 files changed, 13 insertions, 1 deletions
diff --git a/Lib/fileinput.py b/Lib/fileinput.py
index 27ccc3b..5c06627 100644
--- a/Lib/fileinput.py
+++ b/Lib/fileinput.py
@@ -184,7 +184,7 @@ class FileInput:
"""
def __init__(self, files=None, inplace=0, backup="", bufsize=0):
- if type(files) == type(''):
+ if isinstance(files, basestring):
files = (files,)
else:
if files is None:
diff --git a/Lib/test/test_fileinput.py b/Lib/test/test_fileinput.py
index 3a82c7c..285573c 100644
--- a/Lib/test/test_fileinput.py
+++ b/Lib/test/test_fileinput.py
@@ -157,3 +157,13 @@ try:
verify(fi.lineno() == 6)
finally:
remove_tempfiles(t1, t2)
+
+if verbose:
+ print "15. Unicode filenames"
+try:
+ t1 = writeTmp(1, ["A\nB"])
+ fi = FileInput(files=unicode(t1, sys.getfilesystemencoding()))
+ lines = list(fi)
+ verify(lines == ["A\n", "B"])
+finally:
+ remove_tempfiles(t1)
diff --git a/Misc/NEWS b/Misc/NEWS
index 9f92bf4..47bb57a 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -366,6 +366,8 @@ Extension Modules
Library
-------
+- Patch #1337756: fileinput now accepts Unicode filenames.
+
- Patch #1373643: The chunk module can now read chunks larger than
two gigabytes.