From 208badda275a7aaf722a8db87297637e161fa7aa Mon Sep 17 00:00:00 2001
From: Georg Brandl <georg@python.org>
Date: Sun, 30 Apr 2006 17:42:26 +0000
Subject: Fix another problem in inspect: if the module for an object cannot be
 found, don't try to give its __dict__ to linecache.

---
 Lib/inspect.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/Lib/inspect.py b/Lib/inspect.py
index 4b2058e..bf7f006 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -412,7 +412,11 @@ def findsource(object):
     in the file and the line number indexes a line in that list.  An IOError
     is raised if the source code cannot be retrieved."""
     file = getsourcefile(object) or getfile(object)
-    lines = linecache.getlines(file, getmodule(object).__dict__)
+    module = getmodule(object)
+    if module:
+        lines = linecache.getlines(file, module.__dict__)
+    else:
+        lines = linecache.getlines(file)
     if not lines:
         raise IOError('could not get source code')
 
-- 
cgit v0.12

