From: Pete Wyckoff Date: Sat, 20 Feb 2010 14:05:00 GMT Subject: Re: [PATCH] git-p4: fix bug in symlink handling Message-ID: <20100220140500.GA23423@arf.padd.com> In-Reply-To: <6682cfcf1002160044i7aacd1b0t7bb351380b1bd27c@mail.gmail.com> evan.powers@gmail.com wrote on Tue, 16 Feb 2010 00:44 -0800: > Fix inadvertent breakage from b932705 in the code that strips the > trailing '\n' from p4 print on a symlink. (In practice, contents is of > the form ['target\n', ''].) > > Signed-off-by: Evan Powers Acked-by: Pete Wyckoff This was indeed an inadvertent bug introduced by that commit. Old code just appended all the data sections so did not see the null. This fix works for me. -- Pete > --- > This patch Works For Me, but I didn't take the time to understand the > entire code path so it might be equally valid to replace contents.pop() > with contents.pop(0) and call it a day. > > contrib/fast-import/git-p4 | 5 ++--- > 1 files changed, 2 insertions(+), 3 deletions(-) > > diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4 > index e7c4814..cd96c6f 100755 > --- a/contrib/fast-import/git-p4 > +++ b/contrib/fast-import/git-p4 > @@ -967,9 +967,8 @@ class P4Sync(Command): > elif file["type"] == "symlink": > mode = "120000" > # p4 print on a symlink contains "target\n", so strip it off > - last = contents.pop() > - last = last[:-1] > - contents.append(last) > + data = ''.join(contents) > + contents = [data[:-1]] > > if self.isWindows and file["type"].endswith("text"): > mangled = [] > -- > 1.6.6 > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >