diff --git a/sphinx/environment.py b/sphinx/environment.py index 535d714cf..676899670 100644 --- a/sphinx/environment.py +++ b/sphinx/environment.py @@ -1297,7 +1297,7 @@ class BuildEnvironment: parent[child] = p ancestors = [] d = docname - while d in parent: + while d in parent and d not in ancestors: ancestors.append(d) d = parent[d] return ancestors