From e7e0f26eb64de205acaac63da89f47aab78ba229 Mon Sep 17 00:00:00 2001
From: Ronnie Sahlberg <sahlberg@google.com>
Date: Tue, 15 Jul 2014 16:02:38 -0700
Subject: [PATCH] refs.c: add a public is_branch function

Both refs.c and fsck.c have their own private copies of the is_branch function.
Delete the is_branch function from fsck.c and make the version in refs.c
public.

Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/fsck.c | 5 -----
 refs.c         | 2 +-
 refs.h         | 2 ++
 3 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/builtin/fsck.c b/builtin/fsck.c
index 8aadca160e..d42a27da89 100644
--- a/builtin/fsck.c
+++ b/builtin/fsck.c
@@ -481,11 +481,6 @@ static int fsck_handle_reflog(const char *logname, const unsigned char *sha1, in
 	return 0;
 }
 
-static int is_branch(const char *refname)
-{
-	return !strcmp(refname, "HEAD") || starts_with(refname, "refs/heads/");
-}
-
 static int fsck_handle_ref(const char *refname, const unsigned char *sha1, int flag, void *cb_data)
 {
 	struct object *obj;
diff --git a/refs.c b/refs.c
index 59fb70087a..d0ddf5608a 100644
--- a/refs.c
+++ b/refs.c
@@ -2810,7 +2810,7 @@ static int log_ref_write(const char *refname, const unsigned char *old_sha1,
 	return 0;
 }
 
-static int is_branch(const char *refname)
+int is_branch(const char *refname)
 {
 	return !strcmp(refname, "HEAD") || starts_with(refname, "refs/heads/");
 }
diff --git a/refs.h b/refs.h
index 1440acc06c..1b223e58a1 100644
--- a/refs.h
+++ b/refs.h
@@ -137,6 +137,8 @@ extern int repack_without_refs(const char **refnames, int n);
 
 extern int ref_exists(const char *);
 
+extern int is_branch(const char *refname);
+
 /*
  * If refname is a non-symbolic reference that refers to a tag object,
  * and the tag can be (recursively) dereferenced to a non-tag object,