Fix potential send-pack SIGSEGV

The check that the source is ahead of the destination incorrectly expects 
pop_most_recent_commit() to gracefully handle an empty list. 

Fix by just checking the list itself, rather than the return value of the 
pop function.

[jc: I did the test script that demonstrated the problem]

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
diff --git a/send-pack.c b/send-pack.c
index 2a7ab2d..9b4be61 100644
--- a/send-pack.c
+++ b/send-pack.c
@@ -134,7 +134,8 @@
 		return 0;
 	list = NULL;
 	commit_list_insert(new, &list);
-	while ((new = pop_most_recent_commit(&list, 1)) != NULL) {
+	while (list) {
+		new = pop_most_recent_commit(&list, 1);
 		if (new == old)
 			return 1;
 	}