changeset 34979:b64ea7fb9599 stable

share: handle --relative shares to a different drive letter gracefully This had the same problem as f445b10dc7fb. Banning os.path.relpath() is tempting, but the hint it provides is useful here.
author Matt Harbison <matt_harbison@yahoo.com>
date Thu, 02 Nov 2017 23:55:09 -0400
parents f445b10dc7fb
children 705d0f2bb677
files mercurial/hg.py
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/hg.py	Thu Nov 02 20:35:31 2017 -0400
+++ b/mercurial/hg.py	Thu Nov 02 23:55:09 2017 -0400
@@ -243,7 +243,9 @@
         try:
             sharedpath = os.path.relpath(sharedpath, destvfs.base)
             requirements += 'relshared\n'
-        except IOError as e:
+        except (IOError, ValueError) as e:
+            # ValueError is raised on Windows if the drive letters differ on
+            # each path
             raise error.Abort(_('cannot calculate relative path'),
                               hint=str(e))
     else: