summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2018-03-26 10:37:59 +0200
committerJean Delvare <jdelvare@suse.de>2018-03-26 10:37:59 +0200
commitdfefa005840694fdeb884d8f3dc359eb37bf8098 (patch)
tree82ed13e0e0214b379f2a9f214153c812cade561d /test
parent073289dc99e3ae47e3dba8184d89633685ba5b3b (diff)
downloadquilt-dfefa005840694fdeb884d8f3dc359eb37bf8098.tar.gz
test: Clean up when interrupted
If the user hits Ctrl+C while a test is running, don't leave our working directory behind. Signed-off-by: Jean Delvare <jdelvare@suse.de>
Diffstat (limited to 'test')
-rwxr-xr-xtest/run2
1 files changed, 2 insertions, 0 deletions
diff --git a/test/run b/test/run
index 2a3f608..85df0ef 100755
--- a/test/run
+++ b/test/run
@@ -255,6 +255,8 @@ sub process_test($$$$) {
# Create a dedicated working directory
mkdir $workdir or die "Failed to create directory $workdir: $!";
+# Clean up on Ctrl+C
+$SIG{INT} = sub { if (chdir $origdir) { system "rm -rf $workdir" }; exit 1; };
chdir $workdir or die "Failed to change to directory $workdir: $!";
$ENV{PWD} = getcwd;