Work around bug in Python's inspect module -- catch an IndexError exception

if the source-code lookup fails.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
This commit is contained in:
Ewan Mellor committed 2007-03-17 16:56:39 +00:00
1 parent c95d97855e
commit 716d0617c9
1 file changed
+12
+12
View File
@@ -59,6 +59,18 @@ if 'TRACE' not in logging.__dict__:
return filename, frame[2]
logging.Logger.findCaller = findCaller
# Work around a bug in Python's inspect module: findsource is supposed to
# raise IOError if it fails, with other functions in that module coping
# with that, but some people are seeing IndexError raised from there.
if hasattr(inspect, 'findsource'):
real_findsource = getattr(inspect, 'findsource')
def findsource(*args, **kwargs):
try:
return real_findsource(*args, **kwargs)
except IndexError, exn:
raise IOError(exn)
inspect.findsource = findsource
log = logging.getLogger("xend")
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.