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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Nguyen Thai Ngoc Duy wrote:
> On Thu, May 7, 2009 at 4:48 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote:
>> Brandon Casey <casey@xxxxxxxxxxxxxxx> writes:
>>
>>> 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?
>>
>>> -     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/  .*//") &&
>>
> 
> I would replace it again, according to e85fe4d8.

The line referenced above will actually be deleted unless someone chimes
in and says it is needed.

The commit you referenced was taken into account in the patch for the other
use of sed on .git/MERGE_RR in the same test script:
"[PATCH 2/2] t4200: convert sed expression which operates on non-text-file to perl"

-brandon

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]