diff options
author | Blair Holloway <blair_holloway@playstation.sony.com> | 2015-04-04 09:46:03 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-04-04 12:43:20 -0700 |
commit | 34a0dbfc6b7463a68df79d5773102f85e56cbe4d (patch) | |
tree | a822caf1c918d173462522a7ce36a2111c2cf454 | |
parent | d077c2db8db64c931976391afee6c35828868a11 (diff) | |
download | git-34a0dbfc6b7463a68df79d5773102f85e56cbe4d.tar.gz |
git-p4: fix filetype detection on files opened exclusivelyld/p4-filetype-detection
If a Perforce server is configured to automatically set +l
(exclusive lock) on add of certain file types, git p4 submit will
fail during getP4OpenedType, as the regex doesn't expect the
trailing '*exclusive*' from p4 opened:
//depot/file.png#1 - add default change (binary+l) *exclusive*
Signed-off-by: Blair Holloway <blair_holloway@playstation.sony.com>
Acked-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Luke Diamand <luke@diamand.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | git-p4.py | 2 | ||||
-rwxr-xr-x | t/t9816-git-p4-locked.sh | 4 |
2 files changed, 3 insertions, 3 deletions
@@ -368,7 +368,7 @@ def getP4OpenedType(file): # Returns the perforce file type for the given file. result = p4_read_pipe(["opened", wildcard_encode(file)]) - match = re.match(".*\((.+)\)\r?$", result) + match = re.match(".*\((.+)\)( \*exclusive\*)?\r?$", result) if match: return match.group(1) else: diff --git a/t/t9816-git-p4-locked.sh b/t/t9816-git-p4-locked.sh index 464f10bd49..d048bd33fa 100755 --- a/t/t9816-git-p4-locked.sh +++ b/t/t9816-git-p4-locked.sh @@ -35,7 +35,7 @@ test_expect_success 'edit with lock not taken' ' ) ' -test_expect_failure 'add with lock not taken' ' +test_expect_success 'add with lock not taken' ' test_when_finished cleanup_git && git p4 clone --dest="$git" //depot && ( @@ -107,7 +107,7 @@ test_expect_failure 'chmod with lock taken' ' ) ' -test_expect_failure 'copy with lock taken' ' +test_expect_success 'copy with lock taken' ' lock_in_another_client && test_when_finished cleanup_git && test_when_finished "cd \"$cli\" && p4 revert file2 && rm -f file2" && |