get_local_heads(): do not return random pointer if there is no head
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>
Thu, 16 Apr 2009 22:16:23 +0000 (08:16 +1000)
committerJunio C Hamano <gitster@pobox.com>
Sat, 18 Apr 2009 03:48:32 +0000 (20:48 -0700)
it's silly to do this:

mkdir foo && cd foo && git init && git push somewhere.git

but segfault should not happen even in that case.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
remote.c

index a06761ace8a2566746a5ebeedf6b3075f625c47b..e4c89b8b6d255a781708a035e90de0c68e233f7f 100644 (file)
--- a/remote.c
+++ b/remote.c
@@ -1504,7 +1504,7 @@ static int one_local_ref(const char *refname, const unsigned char *sha1, int fla
 
 struct ref *get_local_heads(void)
 {
-       struct ref *local_refs, **local_tail = &local_refs;
+       struct ref *local_refs = NULL, **local_tail = &local_refs;
        for_each_ref(one_local_ref, &local_tail);
        return local_refs;
 }