Merge pull request #5330 from tk0miya/5326_invalid_docname_of_man_pages

Fix #5326: manpage: crashed when invalid docname is specified as ``man_pages``
This commit is contained in:
Takeshi KOMIYA 2018-08-22 21:57:18 +09:00 committed by GitHub
commit 7c2f355490
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 0 deletions

View File

@ -17,6 +17,7 @@ Bugs fixed
----------
* #5320: intersphinx: crashed if invalid url given
* #5326: manpage: crashed when invalid docname is specified as ``man_pages``
Testing
--------

View File

@ -18,6 +18,7 @@ from six import string_types
from sphinx import addnodes
from sphinx.builders import Builder
from sphinx.environment import NoUri
from sphinx.locale import __
from sphinx.util import logging
from sphinx.util.console import bold, darkgreen # type: ignore
from sphinx.util.nodes import inline_all_toctrees
@ -72,6 +73,10 @@ class ManualPageBuilder(Builder):
for info in self.config.man_pages:
docname, name, description, authors, section = info
if docname not in self.env.all_docs:
logger.warning(__('"man_pages" config value references unknown '
'document %s'), docname)
continue
if isinstance(authors, string_types):
if authors:
authors = [authors]