Georg Brandl avatar Georg Brandl committed 0d9fda0

Backport two fixes that should have been made here.

Comments (0)

Files changed (2)

sphinx/environment.py

         Process docutils-generated dependency info.
         """
         cwd = os.getcwd()
+        frompath = path.join(path.normpath(self.srcdir), 'dummy')
         deps = doctree.settings.record_dependencies
         if not deps:
             return
-        docdir = path.dirname(self.doc2path(docname, base=None))
         for dep in deps.list:
             # the dependency path is relative to the working dir, so get
             # one relative to the srcdir
-            fullpath = path.normpath(path.join(cwd, dep))
-            relpath = fullpath[len(path.normpath(self.srcdir))+len(path.sep):]
+            relpath = relative_path(frompath,
+                                    path.normpath(path.join(cwd, dep)))
             self.dependencies.setdefault(docname, set()).add(relpath)
 
     def process_images(self, docname, doctree):

sphinx/util/__init__.py

 
 def relative_uri(base, to):
     """Return a relative URL from ``base`` to ``to``."""
+    if to.startswith(SEP):
+        return to
     b2 = base.split(SEP)
     t2 = to.split(SEP)
     # remove common segments
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.