Squelch overzealous "ignoring dangling symref" in an empty repository
057e713 (Warn use of "origin" when remotes/origin/HEAD is dangling, 2009-02-08) tried to warn dangling refs/remotes/origin/HEAD only when "origin" was used to refer to it. There was one corner case a symref is expected to be dangling and this warning is unwarranted: HEAD in an empty repository. This squelches the warning for this special case. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Feb 11, 2009 at 09:22 UTC
9e5b80cd87a511f3403b6f88f87ef40844695f6b
1 file changed
+2
-1
sha1_name.c
+2
-1
@@ -278,7 +278,8 @@ int dwim_ref(const char *str, int len, unsigned char *sha1, char **ref)
278
*ref = xstrdup(r);
279
if (!warn_ambiguous_refs)
280
break;
281
- } else if (flag & REF_ISSYMREF)
281
+ } else if ((flag & REF_ISSYMREF) &&
282
+ (len != 4 || strcmp(str, "HEAD")))
283
warning("ignoring dangling symref %s.", fullref);
284
}
285
free(last_branch);