On 01/16/2012 10:16 AM, Ryan Harper wrote: >>> if test -z "$1" -o -z "$2"; then >>> echo "Usage: $0 QEMU TEST1 [TEST2 ...]" >>> + cleanup >>> exit 1 >> >> Is it worth using 'trap cleanup 0' to install the cleanup handler up >> front, instead of modifying all exit call sites? > > I thought about that, but it seemed to require switching to /bin/bash
Not really. > > and I know Anthony had written the scripts carefully to be /bin/sh. POSIX requires /bin/sh to support 'trap cleanup 0', and I don't know of any counter-example shells that fail to do this. There are non-POSIX shells where installing a trap 0 handler from inside a function body invokes the handler upon exiting the function, instead of exiting the overall script, but even Solaris /bin/sh knows how to correctly handle a trap 0 handler installed outside of any function calls. https://www.gnu.org/software/autoconf/manual/autoconf.html#trap -- Eric Blake ebl...@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature