git-am: interactive should fail gracefully.

When feeding patches from standard input, and --interactive is specified,
quit, so that the user can re-run the command, instead of infinitely
looping.

Signed-off-by: Junio C Hamano <junkio@cox.net>
diff --git a/git-am.sh b/git-am.sh
index 9e41e70..85d6826 100755
--- a/git-am.sh
+++ b/git-am.sh
@@ -172,7 +172,6 @@
 	echo "$sign" >"$dotest/sign"
 	echo "$utf8" >"$dotest/utf8"
 	echo "$keep" >"$dotest/keep"
-	echo "$threeway" >"$dotest/3way"
 	echo 1 >"$dotest/next"
 fi
 
@@ -193,7 +192,6 @@
 else
 	SIGNOFF=
 fi
-threeway=$(cat "$dotest/3way")
 
 last=`cat "$dotest/last"`
 this=`cat "$dotest/next"`
@@ -256,6 +254,8 @@
 
 	if test "$interactive" = t
 	then
+	    test -t 0 ||
+	    die "cannot be interactive without stdin connected to a terminal."
 	    action=again
 	    while test "$action" = again
 	    do