summaryrefslogtreecommitdiff
path: root/git-filter-branch.sh
diff options
context:
space:
mode:
authorLibravatar Ben Walton <bdwalton@gmail.com>2013-10-28 21:43:00 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2013-10-30 10:38:23 -0700
commit53039ab15490d8f957f728cbe018e329924ad326 (patch)
tree0e2e925554830b8d61a4a6368699751cf69a5f9b /git-filter-branch.sh
parentChange sed i\ usage to something Solaris' sed can handle (diff)
downloadtgif-53039ab15490d8f957f728cbe018e329924ad326.tar.xz
Avoid difference in tr semantics between System V and BSD
Solaris' tr (both /usr/bin/ and /usr/xpg4/bin) uses the System V semantics for tr whereby string1's length is truncated to the length of string2 if string2 is shorter. The BSD semantics, as used by GNU tr see string2 padded to the length of string1 using the final character in string2. POSIX explicitly doesn't specify the correct behavior here, making both equally valid. This difference means that Solaris' native tr implementations produce different results for tr ":\t\n" "\0" than GNU tr. This breaks a few tests in t0008-ignores.sh. Possible fixes for this are to make string2 be "\0\0\0" or "[\0*]". Instead, use perl to perform these transliterations which means we don't need to worry about the difference at all. Since we're replacing tr with perl, we also use perl to replace the sed invocations used to transform the files. Replace four identical transforms with a function named broken_c_unquote. Replace the other two identical transforms with a fuction named broken_c_unquote_verbose. Signed-off-by: Ben Walton <bdwalton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-filter-branch.sh')
0 files changed, 0 insertions, 0 deletions