Fix SF#1516184 (again) and add a test to prevent regression.
(There was a problem with empty filenames still causing recursion)
This commit is contained in:
parent
cfe3128cd5
commit
1a2959cfa8
|
@ -364,8 +364,9 @@ def getabsfile(object, _filename=None):
|
|||
|
||||
The idea is for each object to have a unique origin, so this routine
|
||||
normalizes the result as much as possible."""
|
||||
return os.path.normcase(
|
||||
os.path.abspath(_filename or getsourcefile(object) or getfile(object)))
|
||||
if _filename is None:
|
||||
_filename = getsourcefile(object) or getfile(object)
|
||||
return os.path.normcase(os.path.abspath(_filename))
|
||||
|
||||
modulesbyfile = {}
|
||||
|
||||
|
|
|
@ -187,6 +187,7 @@ class TestRetrievingSourceCode(GetSourceBase):
|
|||
exec "def x(): pass" in m.__dict__
|
||||
self.assertEqual(inspect.getsourcefile(m.x.func_code), '<string>')
|
||||
del sys.modules[name]
|
||||
inspect.getmodule(compile('a=10','','single'))
|
||||
|
||||
class TestDecorators(GetSourceBase):
|
||||
fodderFile = mod2
|
||||
|
|
Loading…
Reference in New Issue