On 4/19/23 20:21, Eric Blake wrote: > On Wed, Apr 19, 2023 at 05:31:27PM +0200, Laszlo Ersek wrote: >> Embedding a shell script in a multi-line C string literal is an exercise >> in pain. I can see why the original author (whom I shall not look up with >> git-blame :) ) went for the easy route. Still, we want the source code to >> fit in 80 columns. >> >> At Eric's suggestion, also: >> >> - replace the non-portable control operator "|&" with the portable >> redirection operator "2>&1" and the portable control operator "|"; >> >> - replace the "if ...; then exit 1; else exit 0; fi" constructs with "! >> ...". > > Reviewed-by: Eric Blake <ebl...@redhat.com> > >> Notes: >> v2: >> >> - v1: >> https://listman.redhat.com/archives/libguestfs/2023-April/031298.html >> >> - incorporate Eric's recommendations (commit message, code) >> >> tests/requires.c | 6 ++++-- >> 1 file changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/tests/requires.c b/tests/requires.c >> index 199e30605473..2b7031532fe2 100644 >> --- a/tests/requires.c >> +++ b/tests/requires.c >> @@ -57,7 +57,8 @@ requires_qemu_nbd_tls_support (const char *qemu_nbd) >> * interested in the error message that it prints. >> */ >> snprintf (cmd, sizeof cmd, >> - "if %s --object tls-creds-x509,id=tls0 |& grep -sq 'TLS >> credentials support requires GNUTLS'; then exit 1; else exit 0; fi", >> + "! %s --object tls-creds-x509,id=tls0 2>&1 \\\n" >> + " | grep -sq 'TLS credentials support requires GNUTLS'\n", > > The four bytes " \\\n " portion between the two lines are not > essential (the shell grammar doesn't care if there is a newline at > this point); in fact, if you put the | before \n instead of after, you > can use a newline without needing the \. But I don't see any point > changing this code yet again just to golf out a few more bytes. Let's > leave it as written in your v2. >
Commit 86820dbab497. Thanks Laszlo _______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://listman.redhat.com/mailman/listinfo/libguestfs