git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Brandon Casey <casey@nrlssc.navy.mil>
To: Junio C Hamano <gitster@pobox.com>
Cc: pclouds@gmail.com, git@vger.kernel.org
Subject: Re: [PATCH 4/4] t4200: avoid passing a non-newline terminated file to sed
Date: Wed, 06 May 2009 16:12:25 -0500	[thread overview]
Message-ID: <RsLiW_EIDQ01u5uSMUrIIMzSbMhkfwGJBEGppONH79Im4WyT76bS5A@cipher.nrlssc.navy.mil> (raw)
In-Reply-To: <7vhbzyukyi.fsf@alter.siamese.dyndns.org>

Junio C Hamano wrote:
> Brandon Casey <casey@nrlssc.navy.mil> 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 was about to reply that this fix works fine (actually, I was about to
reply over an hour ago but was interrupted).

But, while testing it I noticed that you had a typo in your version that
_did_not_ cause the test to fail.  You have an extra slash in the path
to '.git/MERGE_RR' which would have caused sha1 to be unset.

The 'sha1' variable that is set here on line 193 is used on the next line
to set 'rr', but 'rr' is never used again.  Unless I'm missing something,
it appears these two lines can be deleted.

-brandon

  reply	other threads:[~2009-05-06 21:12 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-06  5:59 shell compatibility issues with SunOS 5.10 Nguyen Thai Ngoc Duy
2009-05-06  6:16 ` Junio C Hamano
2009-05-06  6:43   ` Nguyen Thai Ngoc Duy
2009-05-07  1:38   ` Nguyen Thai Ngoc Duy
2009-05-06  6:45 ` Johannes Sixt
2009-05-06  6:57   ` Nguyen Thai Ngoc Duy
2009-05-06  9:19     ` Ralf Wildenhues
2009-05-06  9:38       ` Johannes Schindelin
2009-05-06 23:07         ` Nguyen Thai Ngoc Duy
2009-05-06 13:07 ` Jeff King
2009-05-06 18:14 ` Brandon Casey
2009-05-06 18:29   ` [PATCH 0/4] workaround some Solaris sed issues Brandon Casey
2009-05-06 18:29     ` [PATCH 1/4] t4118: add missing '&&' Brandon Casey
2009-05-06 18:29       ` [PATCH 2/4] t4118: avoid sed invocation on file without terminating newline Brandon Casey
2009-05-06 18:29         ` [PATCH 3/4] t/annotate-tests.sh: avoid passing a non-newline terminated file to sed Brandon Casey
2009-05-06 18:29           ` [PATCH 4/4] t4200: " Brandon Casey
2009-05-06 18:48             ` Junio C Hamano
2009-05-06 21:12               ` Brandon Casey [this message]
2009-05-06 21:49                 ` Junio C Hamano
2009-05-06 22:56                   ` [PATCH 1/2] t4200: remove two unnecessary lines Brandon Casey
2009-05-06 22:56                     ` [PATCH 2/2] t4200: convert sed expression which operates on non-text file to perl Brandon Casey
2009-05-06 23:24                       ` Nguyen Thai Ngoc Duy
2009-05-07  1:49               ` [PATCH 4/4] t4200: avoid passing a non-newline terminated file to sed Nguyen Thai Ngoc Duy
2009-05-07  2:06                 ` Brandon Casey
2009-05-07  2:29                   ` Junio C Hamano
2009-05-07  7:26             ` Johannes Sixt
2009-05-07 14:57               ` Brandon Casey
2009-05-06 23:15   ` shell compatibility issues with SunOS 5.10 Nguyen Thai Ngoc Duy
2009-05-07  0:22     ` Brandon Casey
2009-05-07  1:14       ` Junio C Hamano
2009-05-07  2:23         ` Brandon Casey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=RsLiW_EIDQ01u5uSMUrIIMzSbMhkfwGJBEGppONH79Im4WyT76bS5A@cipher.nrlssc.navy.mil \
    --to=casey@nrlssc.navy.mil \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=pclouds@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).