Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH] git-p4: Fix occasional truncation of symlink contents.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:58:24
Subsystem: the rest · Maintainer: Linus Torvalds

Possibly related (same subject, not in this thread)

Pete Wyckoff [off-list ref] writes:
You should send the patch to junio for inclusion in pu/ for the
next release, with:

Acked-by: Pete Wyckoff <redacted>
Thanks; I'll queue this then.

-- >8 --
From: Alexandru Juncu <redacted>
Date: Thu, 8 Aug 2013 16:17:38 +0300
Subject: [PATCH] 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 <redacted>
Signed-off-by: Alex Badea <redacted>
Acked-by: Pete Wyckoff <redacted>
Signed-off-by: Junio C Hamano <redacted>
---
 git-p4.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/git-p4.py b/git-p4.py
index 31e71ff..a53a6dc 100755
--- a/git-p4.py
+++ b/git-p4.py
@@ -2180,9 +2180,13 @@ class P4Sync(Command, P4UserMap):
             git_mode = "100755"
         if type_base == "symlink":
             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)
-            contents = [data[:-1]]
+            if data[-1] == '\n':
+                contents = [data[:-1]]
+            else:
+                contents = [data]
 
         if type_base == "utf16":
             # p4 delivers different text in the python output to -G
-- 
1.8.4-rc2-235-g32b7467
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help