rebase -i: actually show the diffstat when being verbose

The "while" loop in the function do_rest is not supposed to ever be
exited.  Instead, the function do_one checks if there is nothing left,
and cleans up and exits if that is the case.  So the diffstat code
belongs there.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 705178f..1a064af 100755
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -239,7 +239,10 @@
 	fi &&
 	message="$GIT_REFLOG_ACTION: $HEADNAME onto $SHORTONTO)" &&
 	git update-ref -m "$message" $HEADNAME $NEWHEAD $OLDHEAD &&
-	git symbolic-ref HEAD $HEADNAME &&
+	git symbolic-ref HEAD $HEADNAME && {
+		test ! -f "$DOTEST"/verbose ||
+			git diff --stat $(cat "$DOTEST"/head)..HEAD
+	} &&
 	rm -rf "$DOTEST" &&
 	warn "Successfully rebased and updated $HEADNAME."
 
@@ -251,9 +254,6 @@
 	do
 		do_next
 	done
-	test -f "$DOTEST"/verbose &&
-		git diff --stat $(cat "$DOTEST"/head)..HEAD
-	exit
 }
 
 while case $# in 0) break ;; esac