diff options
author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2018-06-10 12:50:52 +0900 |
---|---|---|
committer | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2018-06-10 21:08:21 +0900 |
commit | 0edcae1ff875c64e7d011604df26fdb4a4dffca3 (patch) | |
tree | 0eb68670d6ade7a8e4492fa1a477f7c07153080f /sphinx/pycode/parser.py | |
parent | ac9f973c9be70c9f253a42939a73035be1e9e6aa (diff) | |
download | sphinx-git-0edcae1ff875c64e7d011604df26fdb4a4dffca3.tar.gz |
Fix #5019: autodoc: crashed by Form Feed Character
Diffstat (limited to 'sphinx/pycode/parser.py')
-rw-r--r-- | sphinx/pycode/parser.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sphinx/pycode/parser.py b/sphinx/pycode/parser.py index 5c4291d3d..40334f2e3 100644 --- a/sphinx/pycode/parser.py +++ b/sphinx/pycode/parser.py @@ -34,6 +34,11 @@ else: ASSIGN_NODES = (ast.Assign) +def filter_whitespace(code): + # type: (unicode) -> unicode + return code.replace('\f', ' ') # replace FF (form feed) with whitespace + + def get_assign_targets(node): # type: (ast.AST) -> List[ast.expr] """Get list of targets from Assign and AnnAssign node.""" @@ -466,7 +471,7 @@ class Parser(object): def __init__(self, code, encoding='utf-8'): # type: (unicode, unicode) -> None - self.code = code + self.code = filter_whitespace(code) self.encoding = encoding self.comments = {} # type: Dict[Tuple[unicode, unicode], unicode] self.deforders = {} # type: Dict[unicode, int] |