This module didn't work at all anymore -- blew up with AttributeError

on file.__methods__.  Since the docs say "This module will become obsolete
in a future release", this is just a quick hack to stop it from blowing
up.  If you care about this module, test it!  It doesn't make much sense
on Windows.
This commit is contained in:
Tim Peters 2001-09-18 05:40:24 +00:00
parent db2a902dee
commit 22cd768177
1 changed files with 6 additions and 2 deletions

View File

@ -75,12 +75,16 @@ class _posixfile_:
return self.fileopen(__builtin__.open(name, mode, bufsize)) return self.fileopen(__builtin__.open(name, mode, bufsize))
def fileopen(self, file): def fileopen(self, file):
import types
if `type(file)` != "<type 'file'>": if `type(file)` != "<type 'file'>":
raise TypeError, 'posixfile.fileopen() arg must be file object' raise TypeError, 'posixfile.fileopen() arg must be file object'
self._file_ = file self._file_ = file
# Copy basic file methods # Copy basic file methods
for method in file.__methods__: for maybemethod in dir(file):
setattr(self, method, getattr(file, method)) if not maybemethod.startswith('_'):
attr = getattr(file, maybemethod)
if isinstance(attr, types.BuiltinMethodType):
setattr(self, maybemethod, attr)
return self return self
# #