From aed73433a74a624611d5fbed1f551dd8c0cf9b5c Mon Sep 17 00:00:00 2001 From: Josh Poimboeuf Date: Tue, 18 Feb 2014 10:50:54 -0600 Subject: [PATCH] cleanup the cleanup handling - always remove TEMPDIR, otherwise /tmp can fill up if you get multiple build errors - always remove KSRCDIR - only remove the log file on success --- kpatch-build/kpatch-build | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/kpatch-build/kpatch-build b/kpatch-build/kpatch-build index 7b44a2e..e9e5a39 100755 --- a/kpatch-build/kpatch-build +++ b/kpatch-build/kpatch-build @@ -32,10 +32,6 @@ KSRCDIR_CACHE="$KSRCDIR.tgz" TEMPDIR= STRIPCMD="strip -d --keep-file-symbols" -cleanup() { - rm -Rf "$KSRCDIR" "$LOGFILE" "$TEMPDIR" > /dev/null 2>/dev/null -} - die() { if [[ -z $1 ]]; then echo "ERROR: kpatch build failed. Check $LOGFILE for more details." >&2 @@ -73,10 +69,10 @@ if [[ "$PATCHNAME" =~ \.patch ]] || [[ "$PATCHNAME" =~ \.diff ]]; then PATCHNAME="${PATCHNAME%.*}" fi -cleanup - TEMPDIR="$(mktemp -d)" || die "mktemp failed" +trap "rm -rf $TEMPDIR $KSRCDIR" EXIT INT TERM + if [[ -f "$KSRCDIR_CACHE" ]]; then echo "Using cache at $KSRCDIR_CACHE" rm -rf "$KSRCDIR" @@ -164,5 +160,6 @@ $STRIPCMD "kpatch-$PATCHNAME.ko" >> "$LOGFILE" 2>&1 || die cp -f "$TEMPDIR/patch/kpatch-$PATCHNAME.ko" "$BASE" || die -cleanup +rm -f "$LOGFILE" + echo "SUCCESS"