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

Re: [PATCH 4/4] t4200: avoid passing a non-newline terminated file to sed

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:46:43

Brandon Casey [off-list ref] writes:
Nguyen Thai Ngoc Duy wrote:
quoted
On Thu, May 7, 2009 at 4:48 AM, Junio C Hamano [off-list ref] wrote:
quoted
Brandon Casey [off-list ref] writes:
quoted
Some versions of sed exit non-zero if the file they are supplied is not
newline terminated.  Solaris's /usr/xpg4/bin/sed is one such sed.  So
rework this test to avoid doing so.
I think up to your 3/4 is reasonable, but this is not enough for POSIX
conformance (it is Ok if it is just aiming to fix "Solaris quirk").  POSIX
sed is only required to work on text files, but .git/MERGE_RR is not a
text file (it is a sequence of NUL terminated records).

I think something like this may work better.  Can somebody test?
quoted
-     sha1=$(sed -e "s/       .*//" .git/MERGE_RR) &&
+     sha1=$({ cat .git/MERGE_RR; echo; } | sed -e "s/        .*//") &&
       sha1=$(tr "\\000" "\\012" <./git/MERGE_RR | sed -e "s/  .*//") &&
The line referenced above will actually be deleted unless someone chimes
in and says it is needed.
I've already removed it; thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help