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 1cc9ec3b3d..b75930251d 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 d8d18d1569..912b6fafac 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 bffca18890..b393f2a2ea 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 bd45ee5e5c..2a39856f88 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 70f6a62ad0..fa665ff817 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/$$"