Fix SF #1001053, wave.open() with unicode filename fails

Backport candidate.
This commit is contained in:
Neal Norwitz 2004-08-01 22:48:06 +00:00
parent 4ecd8cd046
commit 0e67fd478f
2 changed files with 4 additions and 2 deletions

View File

@ -155,7 +155,7 @@ class Wave_read:
def __init__(self, f): def __init__(self, f):
self._i_opened_the_file = None self._i_opened_the_file = None
if type(f) == type(''): if isinstance(f, basestring):
f = __builtin__.open(f, 'rb') f = __builtin__.open(f, 'rb')
self._i_opened_the_file = f self._i_opened_the_file = f
# else, assume it is an open file object already # else, assume it is an open file object already
@ -294,7 +294,7 @@ class Wave_write:
def __init__(self, f): def __init__(self, f):
self._i_opened_the_file = None self._i_opened_the_file = None
if type(f) == type(''): if isinstance(f, basestring):
f = __builtin__.open(f, 'wb') f = __builtin__.open(f, 'wb')
self._i_opened_the_file = f self._i_opened_the_file = f
self.initfp(f) self.initfp(f)

View File

@ -46,6 +46,8 @@ Extension modules
Library Library
------- -------
- Bug #1001053. wave.open() now accepts unicode filenames.
- gzip.GzipFile has a new fileno() method, to retrieve the handle of the - gzip.GzipFile has a new fileno() method, to retrieve the handle of the
underlying file object (provided it has a fileno() method). This is underlying file object (provided it has a fileno() method). This is
needed if you want to use os.fsync() on a GzipFile. needed if you want to use os.fsync() on a GzipFile.