diff options
| author | shimizukawa <shimizukawa@gmail.com> | 2012-10-30 10:04:18 +0900 |
|---|---|---|
| committer | shimizukawa <shimizukawa@gmail.com> | 2012-10-30 10:04:18 +0900 |
| commit | fbd51cc94c7e602727f9b3ea010cf2fba9e425ff (patch) | |
| tree | 81ac3e67ed2874ac03b465db1fab06cec22cd461 /sphinx | |
| parent | 2a72daa970001fbb71351a3d2e7de744125351b9 (diff) | |
| download | sphinx-fbd51cc94c7e602727f9b3ea010cf2fba9e425ff.tar.gz | |
fix #1008: can't get correct source code filename because all modules have '__loader__' attribute at Python-3.3.
Diffstat (limited to 'sphinx')
| -rw-r--r-- | sphinx/util/__init__.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sphinx/util/__init__.py b/sphinx/util/__init__.py index 6cb83aec..7dce7012 100644 --- a/sphinx/util/__init__.py +++ b/sphinx/util/__init__.py @@ -197,14 +197,14 @@ def get_module_source(modname): except Exception, err: raise PycodeError('error importing %r' % modname, err) mod = sys.modules[modname] - if hasattr(mod, '__loader__'): - try: - source = mod.__loader__.get_source(modname) - except Exception, err: - raise PycodeError('error getting source for %r' % modname, err) - return 'string', source filename = getattr(mod, '__file__', None) if filename is None: + if hasattr(mod, '__loader__'): + try: + source = mod.__loader__.get_source(modname) + except Exception, err: + raise PycodeError('error getting source for %r' % modname, err) + return 'string', source raise PycodeError('no source found for module %r' % modname) filename = path.normpath(path.abspath(filename)) lfilename = filename.lower() |
