summaryrefslogtreecommitdiff
path: root/sphinx/pycode
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2010-06-20 14:24:32 +0200
committerGeorg Brandl <georg@python.org>2010-06-20 14:24:32 +0200
commit2d1b34d67961a57447dbd765009bcfd152b716c4 (patch)
tree937fb653c3117fe45e744824527a537b9d019770 /sphinx/pycode
parentf76e5165d6f0e59aec9d4bc222daa170636ee59e (diff)
parent4823106e957b4152a071d46a8927171e3237b688 (diff)
downloadsphinx-2d1b34d67961a57447dbd765009bcfd152b716c4.tar.gz
merge with 0.6
Diffstat (limited to 'sphinx/pycode')
-rw-r--r--sphinx/pycode/__init__.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/sphinx/pycode/__init__.py b/sphinx/pycode/__init__.py
index 63303a85..b8e2fded 100644
--- a/sphinx/pycode/__init__.py
+++ b/sphinx/pycode/__init__.py
@@ -195,6 +195,8 @@ class ModuleAnalyzer(object):
self.srcname = srcname
# file-like object yielding source lines
self.source = source
+ # will be changed when found by parse()
+ self.encoding = sys.getdefaultencoding()
# cache the source code as well
pos = self.source.tell()
@@ -227,15 +229,13 @@ class ModuleAnalyzer(object):
self.parsetree = pydriver.parse_tokens(self.tokens)
except parse.ParseError, err:
raise PycodeError('parsing failed', err)
- # find the source code encoding
- encoding = sys.getdefaultencoding()
+ # find the source code encoding, if present
comments = self.parsetree.get_prefix()
for line in comments.splitlines()[:2]:
match = _coding_re.search(line)
if match is not None:
- encoding = match.group(1)
+ self.encoding = match.group(1)
break
- self.encoding = encoding
def find_attr_docs(self, scope=''):
"""Find class and module-level attributes and their documentation."""