diff options
Diffstat (limited to 'cpp/examples/verify')
-rwxr-xr-x | cpp/examples/verify | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/cpp/examples/verify b/cpp/examples/verify index 3dbb2a4521..9271d8d972 100755 --- a/cpp/examples/verify +++ b/cpp/examples/verify @@ -6,15 +6,19 @@ DIR=$PWD SRC=`dirname $0 | sed 's|^\([^/].*\)|'$PWD'/\1|'`/examples -# Kill any leftover background jobs. -trap "kill %% > /dev/null 2>&1" EXIT - # Start private broker if QPIDD is set. if [ -n "$QPIDD" ] ; then export QPID_PORT=`$QPIDD -dp0` || { echo "Cannot start $QPIDD" ; exit 1; } trap "$QPIDD -q" EXIT fi +cleanup() { + test -n "$QPIDD" && $QPIDD -q # Private broker + kill %% > /dev/null 2>&1 # Leftover background jobs +} + +trap cleanup EXIT + ARGS="${QPID_HOST:-localhost} $QPID_PORT" @@ -25,7 +29,7 @@ waitfor() { until grep -a -l "$2" $1 >/dev/null 2>&1 ; do sleep 1 ; done ; } background() { pattern=$1; shift - "$@" > $1.out & + eval "$@ $ARGS > $1.out &" waitfor $1.out $pattern } |