summaryrefslogtreecommitdiff
path: root/sphinx/builders
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2014-01-19 17:33:55 +0100
committerGeorg Brandl <georg@python.org>2014-01-19 17:33:55 +0100
commitdbefc55b2fac1e0f531af7d5f4de51aeef65bcf2 (patch)
tree75f22203b6e1e1baaa70615baf73ceca60406534 /sphinx/builders
parentaaabdd9b8ba3757180e316098a478cf29d651aa7 (diff)
downloadsphinx-dbefc55b2fac1e0f531af7d5f4de51aeef65bcf2.tar.gz
Closes #1283: Fix a bug in the detection of changed files that would try to access doctrees of deleted documents.
Diffstat (limited to 'sphinx/builders')
-rw-r--r--sphinx/builders/__init__.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/sphinx/builders/__init__.py b/sphinx/builders/__init__.py
index c153d121..f1280a0b 100644
--- a/sphinx/builders/__init__.py
+++ b/sphinx/builders/__init__.py
@@ -265,6 +265,12 @@ class Builder(object):
self.info(bold('no targets are out of date.'))
return
+ # filter "docnames" (list of outdated files) by the updated
+ # found_docs of the environment; this will remove docs that
+ # have since been removed
+ if docnames != ['__all__']:
+ docnames = set(docnames) & self.env.found_docs
+
# another indirection to support builders that don't build
# files individually
self.write(docnames, list(updated_docnames), method)
@@ -289,6 +295,7 @@ class Builder(object):
docnames = set(build_docnames) | set(updated_docnames)
else:
docnames = set(build_docnames)
+ self.app.debug('docnames to write: %s', ', '.join(sorted(docnames)))
# add all toctree-containing files that may have changed
for docname in list(docnames):