about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-04-11 15:08:02 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-04-20 14:58:25 -0300
commit136c42bf121185dd2cecd012fa614b24303b8497 (patch)
treeaac11b636c5f41c6cac27d6aa0ca941cf41f9cdf
parent43765a182c200e9c43419568b9222e2b8b097050 (diff)
downloadglibc-136c42bf121185dd2cecd012fa614b24303b8497.tar.gz
glibc-136c42bf121185dd2cecd012fa614b24303b8497.tar.xz
glibc-136c42bf121185dd2cecd012fa614b24303b8497.zip
posix: Add cleanup on the trap list for globtest.sh
This patch prevents lingering files for SIGSEGV failures by adding
a cleanup handler on trap handler.  Checked on x86_64-linux-gnu.

	* posix/globtest.sh: Add cleanup routine on trap 0.

Cherry-pick of 4fee33f.
-rw-r--r--ChangeLog4
-rwxr-xr-xposix/globtest.sh9
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index d040992f7e..e2ee9148d7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2017-04-11  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+	* posix/globtest.sh: Add cleanup routine on trap 0.
+
 2017-02-07  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
 
 	* malloc/arena.c (__malloc_fork_lock_parent): Add internal_function
diff --git a/posix/globtest.sh b/posix/globtest.sh
index 7c9f590167..f40350517b 100755
--- a/posix/globtest.sh
+++ b/posix/globtest.sh
@@ -47,7 +47,12 @@ testout=${common_objpfx}posix/globtest-out
 rm -rf $testdir $testout
 mkdir $testdir
 
-trap 'chmod 777 $testdir/noread; rm -fr $testdir $testout' 1 2 3 15
+cleanup() {
+    chmod 777 $testdir/noread
+    rm -fr $testdir $testout
+}
+
+trap cleanup 0 HUP INT QUIT TERM
 
 echo 1 > $testdir/file1
 echo 2 > $testdir/file2
@@ -795,8 +800,6 @@ if test $failed -ne 0; then
 fi
 
 if test $result -eq 0; then
-    chmod 777 $testdir/noread
-    rm -fr $testdir $testout
     echo "All OK." > $logfile
 fi