From 159389f0da91e893962923f4aca951f8e6d9a451 Mon Sep 17 00:00:00 2001 From: Kaiyi Li Date: Wed, 27 Mar 2024 01:53:22 -0700 Subject: [PATCH] Fix drive mounted directory on Windows On my Windows machine, I mount drive D: to the directory C:\src. The old implementation returns the incorrect 'C:\\??\\Volume{ad2eb15e-f293-4d48-a448-54757d95a97c}' result, which breaks the repo init command. With the use of os.path.realpath, it can return 'D:\\' correctly. Change-Id: Ia5f53989055125cb282d4123cf55d060718aa1ff Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/416580 Reviewed-by: Greg Edelston Tested-by: Kaiyi Li Commit-Queue: Kaiyi Li --- platform_utils.py | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/platform_utils.py b/platform_utils.py index 4cf994bc..29060099 100644 --- a/platform_utils.py +++ b/platform_utils.py @@ -259,24 +259,4 @@ def realpath(path): Availability: Windows, Unix. """ - if isWindows(): - current_path = os.path.abspath(path) - path_tail = [] - for c in range(0, 100): # Avoid cycles - if islink(current_path): - target = readlink(current_path) - current_path = os.path.join( - os.path.dirname(current_path), target - ) - else: - basename = os.path.basename(current_path) - if basename == "": - path_tail.append(current_path) - break - path_tail.append(basename) - current_path = os.path.dirname(current_path) - path_tail.reverse() - result = os.path.normpath(os.path.join(*path_tail)) - return result - else: - return os.path.realpath(path) + return os.path.realpath(path)