git-p4: Fix occasional truncation of symlink contents.

Symlink contents in p4 print sometimes have a trailing
new line character, but sometimes it doesn't. git-p4
should only remove the last character if that character
is '\n'.

Signed-off-by: Alex Juncu <ajuncu@ixiacom.com>
Signed-off-by: Alex Badea <abadea@ixiacom.com>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Alexandru Juncu 2013-08-08 16:17:38 +03:00 committed by Junio C Hamano
parent 96cb27a9d2
commit 1292df11e8

View File

@ -2180,9 +2180,13 @@ class P4Sync(Command, P4UserMap):
git_mode = "100755" git_mode = "100755"
if type_base == "symlink": if type_base == "symlink":
git_mode = "120000" git_mode = "120000"
# p4 print on a symlink contains "target\n"; remove the newline # p4 print on a symlink sometimes contains "target\n";
# if it does, remove the newline
data = ''.join(contents) data = ''.join(contents)
if data[-1] == '\n':
contents = [data[:-1]] contents = [data[:-1]]
else:
contents = [data]
if type_base == "utf16": if type_base == "utf16":
# p4 delivers different text in the python output to -G # p4 delivers different text in the python output to -G