summaryrefslogtreecommitdiff
path: root/refs.c
diff options
context:
space:
mode:
authorMichael Haggerty <mhagger@alum.mit.edu>2012-02-11 06:21:01 (GMT)
committerJunio C Hamano <gitster@pobox.com>2012-02-13 03:50:39 (GMT)
commitcf6672edb1eb90ef7f79d37eca08c93a662802a8 (patch)
treeacf89046c371638ab9ef525979cd35a8a68289fd /refs.c
parenta1287f7540d2a27fcde26b356dc176c5dbb4f4e2 (diff)
downloadgit-cf6672edb1eb90ef7f79d37eca08c93a662802a8.zip
git-cf6672edb1eb90ef7f79d37eca08c93a662802a8.tar.gz
git-cf6672edb1eb90ef7f79d37eca08c93a662802a8.tar.bz2
refs: remove the extra_refs API
The extra_refs provided a kludgy way to create fake references at a global level in the hope that they would only affect some particular code path. The last user of this API been rewritten, so strip this stuff out before somebody else gets the bad idea of using it. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'refs.c')
-rw-r--r--refs.c23
1 files changed, 1 insertions, 22 deletions
diff --git a/refs.c b/refs.c
index b8843bb..c9f6835 100644
--- a/refs.c
+++ b/refs.c
@@ -183,12 +183,6 @@ static struct ref_cache {
static struct ref_entry *current_ref;
-/*
- * Never call sort_ref_array() on the extra_refs, because it is
- * allowed to contain entries with duplicate names.
- */
-static struct ref_array extra_refs;
-
static void clear_ref_array(struct ref_array *array)
{
int i;
@@ -289,16 +283,6 @@ static void read_packed_refs(FILE *f, struct ref_array *array)
}
}
-void add_extra_ref(const char *refname, const unsigned char *sha1, int flag)
-{
- add_ref(&extra_refs, create_ref_entry(refname, sha1, flag, 0));
-}
-
-void clear_extra_refs(void)
-{
- clear_ref_array(&extra_refs);
-}
-
static struct ref_array *get_packed_refs(struct ref_cache *refs)
{
if (!refs->did_packed) {
@@ -733,16 +717,11 @@ fallback:
static int do_for_each_ref(const char *submodule, const char *base, each_ref_fn fn,
int trim, int flags, void *cb_data)
{
- int retval = 0, i, p = 0, l = 0;
+ int retval = 0, p = 0, l = 0;
struct ref_cache *refs = get_ref_cache(submodule);
struct ref_array *packed = get_packed_refs(refs);
struct ref_array *loose = get_loose_refs(refs);
- struct ref_array *extra = &extra_refs;
-
- for (i = 0; i < extra->nr; i++)
- retval = do_one_ref(base, fn, trim, flags, cb_data, extra->refs[i]);
-
sort_ref_array(packed);
sort_ref_array(loose);
while (p < packed->nr && l < loose->nr) {