From 3d53b9ef1a4cda7b6303a0496f8531eceeef0e77 Mon Sep 17 00:00:00 2001 From: Alvaro Herrera Date: Tue, 20 Sep 2022 18:50:16 +0200 Subject: [PATCH] Fix `trap` in a few shell scripts The original `trap` lines in these scripts are incomplete: in case of any signal, they delete the working directory but let the script run to completion, which is useless because it will only proceed to complain about the working directory being removed. Add `exit` there, with the original exit value (not rm's). Since this is mostly just cosmetic, no backpatch. Discussion: https://postgr.es/m/20220913181002.hzsosy7qkemb7ky7@alvherre.pgsql --- src/tools/find_static | 2 +- src/tools/make_ctags | 2 +- src/tools/pginclude/cpluspluscheck | 2 +- src/tools/pginclude/headerscheck | 6 +++--- src/tools/pgtest | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/tools/find_static b/src/tools/find_static index 1cc9ec3b3dc..b75930251d9 100755 --- a/src/tools/find_static +++ b/src/tools/find_static @@ -2,7 +2,7 @@ # src/tools/find_static -trap "rm -f /tmp/$$" 0 1 2 3 15 +trap "ret=$?; rm -rf /tmp/$$; exit $ret" 0 1 2 3 15 # This script finds functions that are either never called, or # should be static. diff --git a/src/tools/make_ctags b/src/tools/make_ctags index d8d18d1569f..912b6fafac1 100755 --- a/src/tools/make_ctags +++ b/src/tools/make_ctags @@ -5,7 +5,7 @@ command -v ctags >/dev/null || \ { echo "'ctags' program not found" 1>&2; exit 1; } -trap "rm -f /tmp/$$" 0 1 2 3 15 +trap "ret=$?; rm -rf /tmp/$$; exit $ret" 0 1 2 3 15 rm -f ./tags IS_EXUBERANT="" diff --git a/src/tools/pginclude/cpluspluscheck b/src/tools/pginclude/cpluspluscheck index bffca18890c..b393f2a2eaa 100755 --- a/src/tools/pginclude/cpluspluscheck +++ b/src/tools/pginclude/cpluspluscheck @@ -50,7 +50,7 @@ done # Create temp directory. tmp=`mktemp -d /tmp/$me.XXXXXX` -trap 'rm -rf $tmp' 0 1 2 3 15 +trap "ret=$?; rm -rf $tmp; exit $ret" 0 1 2 3 15 exit_status=0 diff --git a/src/tools/pginclude/headerscheck b/src/tools/pginclude/headerscheck index bd45ee5e5c7..2a39856f88c 100755 --- a/src/tools/pginclude/headerscheck +++ b/src/tools/pginclude/headerscheck @@ -46,7 +46,7 @@ CPPFLAGS=`echo "$CPPFLAGS" | sed "s|\\\$(PG_SYSROOT)|$PG_SYSROOT|g"` # Create temp directory. tmp=`mktemp -d /tmp/$me.XXXXXX` -trap 'rm -rf $tmp' 0 1 2 3 15 +trap "ret=$?; rm -rf $tmp; exit $ret" 0 1 2 3 15 exit_status=0 @@ -154,9 +154,9 @@ do EXTRAINCLUDES="$python_includespec" ;; src/interfaces/ecpg/*) EXTRAINCLUDES="-I $builddir/src/interfaces/ecpg/include -I $srcdir/src/interfaces/ecpg/include" ;; - src/backend/parser/*) + src/backend/parser/*) EXTRAINCLUDES="-I $builddir/src/backend/parser/" ;; - src/backend/utils/adt/*) + src/backend/utils/adt/*) EXTRAINCLUDES="-I $builddir/src/backend/utils/adt/" ;; *) EXTRAINCLUDES="" ;; diff --git a/src/tools/pgtest b/src/tools/pgtest index 70f6a62ad02..fa665ff8172 100755 --- a/src/tools/pgtest +++ b/src/tools/pgtest @@ -14,7 +14,7 @@ MAKE="make" [ ! -d src ] && echo "This must be run from the top of the PostgreSQL source tree" 1>&2 && exit 1 -trap "rm -rf /tmp/$$" 0 1 2 3 15 +trap "ret=$?; rm -rf /tmp/$$; exit $ret" 0 1 2 3 15 mkdir /tmp/$$ TMP="/tmp/$$"