When git am is called w/o arguments, w/o a patch on stdin and the user hits ctrl-c, it leaves behind a partially populated $dotest directory. After this commit, it emits usage when called w/o arguments and w/o a patch on stdin. Also ensure that $dotest is cleaned up if user manages to interupt mailsplit while it is processing input. Noticed by Sverre Rabbelier --- git-am.sh | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/git-am.sh b/git-am.sh index b1c05c9..36227c6 100755 --- a/git-am.sh +++ b/git-am.sh @@ -254,10 +254,10 @@ else done shift fi - git mailsplit -d"$prec" -o"$dotest" -b -- "$@" > "$dotest/last" || { - rm -fr "$dotest" - exit 1 - } + test $# = 0 && test -t 0 && usage + trap 'rm -fr "$dotest"' 0 + git mailsplit -d"$prec" -o"$dotest" -b -- "$@" > "$dotest/last" || exit 1 + trap - 0 # -s, -u, -k, --whitespace, -3, -C and -p flags are kept # for the resuming session after a patch failure. -- 1.6.1.224.gb56c -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html