summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/inspect.py5
-rw-r--r--Lib/test/test_inspect.py1
2 files changed, 4 insertions, 2 deletions
diff --git a/Lib/inspect.py b/Lib/inspect.py
index 311fe7e..dc2fa08 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -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 = {}
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 912a24f..76f2566 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -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