From ed3909b1a781d3ee1acfebba41d68c24b88f6edb Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 16 Oct 2010 07:29:06 -0600 Subject: [PATCH] Fix bugs in frwrapper returned by lopen on windows --- src/calibre/startup.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/calibre/startup.py b/src/calibre/startup.py index 1046cd93b3..b5741c1991 100644 --- a/src/calibre/startup.py +++ b/src/calibre/startup.py @@ -120,7 +120,8 @@ if not _run_once: object.__setattr__(self, 'name', name) def __getattribute__(self, attr): - if attr == 'name': + if attr in ('name', '__enter__', '__str__', '__unicode__', + '__repr__'): return object.__getattribute__(self, attr) fobject = object.__getattribute__(self, 'fobject') return getattr(fobject, attr) @@ -141,6 +142,10 @@ if not _run_once: def __unicode__(self): return repr(self).decode('utf-8') + def __enter__(self): + fobject = object.__getattribute__(self, 'fobject') + fobject.__enter__() + return self m = mode[0] random = len(mode) > 1 and mode[1] == '+'