mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
project.py: Fix check for wild cards
The intention of the check is to verify whether the target file name contains a wild card. The code, however, assumes that if the file is non-existent - it contains a wild card. This has the side effect that a target file that does not exist at the moment of the check is considered to contain a wild card, this leads itself to softlink not being created. Change-Id: I4e4cd7b5e1b8ce2e4b2edc9abf5a1147cd86242f Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/265736 Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: Angel Petkov <apetkov86@gmail.com>
This commit is contained in:
parent
d0ca0f6814
commit
dbfbcb14c1
@ -405,8 +405,8 @@ class _LinkFile(object):
|
|||||||
else:
|
else:
|
||||||
src = _SafeExpandPath(self.git_worktree, self.src)
|
src = _SafeExpandPath(self.git_worktree, self.src)
|
||||||
|
|
||||||
if os.path.exists(src):
|
if not glob.has_magic(src):
|
||||||
# Entity exists so just a simple one to one link operation.
|
# Entity does not contain a wild card so just a simple one to one link operation.
|
||||||
dest = _SafeExpandPath(self.topdir, self.dest, skipfinal=True)
|
dest = _SafeExpandPath(self.topdir, self.dest, skipfinal=True)
|
||||||
# dest & src are absolute paths at this point. Make sure the target of
|
# dest & src are absolute paths at this point. Make sure the target of
|
||||||
# the symlink is relative in the context of the repo client checkout.
|
# the symlink is relative in the context of the repo client checkout.
|
||||||
@ -414,7 +414,7 @@ class _LinkFile(object):
|
|||||||
self.__linkIt(relpath, dest)
|
self.__linkIt(relpath, dest)
|
||||||
else:
|
else:
|
||||||
dest = _SafeExpandPath(self.topdir, self.dest)
|
dest = _SafeExpandPath(self.topdir, self.dest)
|
||||||
# Entity doesn't exist assume there is a wild card
|
# Entity contains a wild card.
|
||||||
if os.path.exists(dest) and not platform_utils.isdir(dest):
|
if os.path.exists(dest) and not platform_utils.isdir(dest):
|
||||||
_error('Link error: src with wildcard, %s must be a directory', dest)
|
_error('Link error: src with wildcard, %s must be a directory', dest)
|
||||||
else:
|
else:
|
||||||
|
Loading…
Reference in New Issue
Block a user