Commit 0e69485efd4637223b1a138bfebaf5b3ed048bb4

Etienne Samson 2018-10-23T20:34:47

clar: provide a way to run some shell before exiting

diff --git a/ci/test.sh b/ci/test.sh
index b64b396..a9d6071 100755
--- a/ci/test.sh
+++ b/ci/test.sh
@@ -14,7 +14,7 @@ USER=${USER:-$(whoami)}
 SUCCESS=1
 
 VALGRIND="valgrind --leak-check=full --show-reachable=yes --error-exitcode=125 --num-callers=50 --suppressions=\"$SOURCE_DIR/libgit2_clar.supp\""
-LEAKS="MallocStackLogging=1 MallocScribble=1 MallocLogFile=/dev/null leaks -quiet -atExit -- nohup"
+LEAKS="MallocStackLogging=1 MallocScribble=1 MallocLogFile=/dev/null"
 
 cleanup() {
 	echo "Cleaning up..."
diff --git a/tests/main.c b/tests/main.c
index b4fccec..00b2bae 100644
--- a/tests/main.c
+++ b/tests/main.c
@@ -8,6 +8,7 @@ int main(int argc, char *argv[])
 #endif
 {
 	int res;
+	char *at_exit_cmd;
 
 	clar_test_init(argc, argv);
 
@@ -28,5 +29,11 @@ int main(int argc, char *argv[])
 	cl_global_trace_disable();
 	git_libgit2_shutdown();
 
+	at_exit_cmd = getenv("CLAR_AT_EXIT");
+	if (at_exit_cmd != NULL) {
+		int at_exit = system(at_exit_cmd);
+		return res || at_exit;
+	}
+
 	return res;
 }