From afdcec73660737d0ac28a808829ab76587a9befa Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Fri, 22 Sep 2006 00:07:01 +0200 Subject: [PATCH] show-branch: mark active branch with a '*' again This was lost in the packed-ref updates. The original test was a bit dubious, so I cleaned that up, too. It fixes the case when the current HEAD is refs/heads/bla/master: the original test was true for both bla/master _and_ master. However, it shares a hard-to-fix bug with the original test: if the current HEAD is refs/heads/master, and there is a branch refs/heads/heads/master, then both are marked active. Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- builtin-show-branch.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/builtin-show-branch.c b/builtin-show-branch.c index 5d6ce5683..fb1a4000d 100644 --- a/builtin-show-branch.c +++ b/builtin-show-branch.c @@ -443,6 +443,12 @@ static int rev_is_head(char *head, int headlen, char *name, if ((!head[0]) || (head_sha1 && sha1 && hashcmp(head_sha1, sha1))) return 0; + if (!strncmp(head, "refs/heads/", 11)) + head += 11; + if (!strncmp(name, "refs/heads/", 11)) + name += 11; + else if (!strncmp(name, "heads/", 6)) + name += 6; return !strcmp(head, name); } -- 2.30.2