qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fam Zheng <famz@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: qemu-devel@nongnu.org, berrange@redhat.com,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	stefanha@redhat.com, "Cleber Rosa" <crosa@redhat.com>,
	pbonzini@redhat.com, "Kamil Rytarowski" <kamil@netbsd.org>
Subject: Re: [Qemu-devel] [PATCH v10 03/13] scripts: Add archive-source.sh
Date: Thu, 21 Sep 2017 08:45:34 +0800	[thread overview]
Message-ID: <20170921004534.GC13703@lemon.lan> (raw)
In-Reply-To: <91d27127-b1ba-0922-7d08-44782d277501@redhat.com>

On Wed, 09/20 08:20, Eric Blake wrote:
> On 09/19/2017 10:25 PM, Fam Zheng wrote:
> > Signed-off-by: Fam Zheng <famz@redhat.com>
> > ---
> >  scripts/archive-source.sh | 51 +++++++++++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 51 insertions(+)
> >  create mode 100755 scripts/archive-source.sh
> > 
> 
> > +
> > +if test -n "$submodules"; then
> > +    {
> > +        git ls-files || error "git ls-files failed"
> > +        for sm in $submodules; do
> > +            (cd $sm; git ls-files) | sed "s:^:$sm/:"
> > +            if test ${PIPESTATUS[0]} -ne 0 -o $? -ne 0; then
> 
> This relies on 'test ... -o ...' which is non-portable.  It "works"
> because there is no possible ambiguity in the contents of $PIPESTATUS
> that could cause a different parse of the test arguments, but I tend to
> discourage any use of -a/-o inside test on principle.  Sadly, writing:
> 
> if test ${PIPESTATUS[0]} -ne 0 || test $? -ne 0
> 
> has a flaw that $? is no longer what you want, at which point you would
> have to introduce a temporary variable.  But we're using bash, so you
> can instead write this as:
> 
> if test "${PIPESTATUS[@]}" != "0 0"; then

Hmm, with exactly this line here I get something like:

./scripts/archive-source.sh: line 36: test: too many arguments

But with

    if test "${PIPESTATUS[0]} ${PIPESTATUS[1]}" != "0 0"; then

it seems to work fine. What is the magic here?

Fam

  parent reply	other threads:[~2017-09-21  0:45 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-20  3:25 [Qemu-devel] [PATCH v10 00/13] tests: Add VM based build tests (for non-x86_64 and/or non-Linux) Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 01/13] gitignore: Ignore vm test images Fam Zheng
2017-09-20 13:13   ` Eric Blake
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 02/13] qemu.py: Add "wait()" method Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 03/13] scripts: Add archive-source.sh Fam Zheng
2017-09-20 13:20   ` Eric Blake
2017-09-21  0:33     ` Fam Zheng
2017-09-21  0:45     ` Fam Zheng [this message]
2017-09-21 13:36       ` Eric Blake
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 04/13] tests: Add a test key pair Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 05/13] tests: Add vm test lib Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 06/13] tests: Add ubuntu.i386 image Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 07/13] tests: Add FreeBSD image Fam Zheng
2017-09-20 20:15   ` Eric Blake
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 08/13] tests: Add NetBSD image Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 09/13] tests: Add OpenBSD image Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 10/13] Makefile: Add rules to run vm tests Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 11/13] MAINTAINERS: Add tests/vm entry Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 12/13] tests: Add README for vm tests Fam Zheng
2017-09-20  3:25 ` [Qemu-devel] [PATCH v10 13/13] docker: Use archive-source.py Fam Zheng

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=20170921004534.GC13703@lemon.lan \
    --to=famz@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --cc=crosa@redhat.com \
    --cc=eblake@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=kamil@netbsd.org \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.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).