summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: eaa759b)
raw | patch | inline | side by side (parent: eaa759b)
author | Christian Couder <chriscool@tuxfamily.org> | |
Mon, 30 Mar 2009 03:07:15 +0000 (05:07 +0200) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Mon, 30 Mar 2009 08:22:53 +0000 (01:22 -0700) |
The "for_each_{tag,branch,remote,replace,}_ref" functions are
redefined in terms of "for_each_ref_in" so that we can lose the
hardcoded length of prefix strings from the code.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
redefined in terms of "for_each_ref_in" so that we can lose the
hardcoded length of prefix strings from the code.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
refs.c | patch | blob | history | |
refs.h | patch | blob | history |
index aeef257ee3cadfe751628f4157a4d63d77237090..2d198a1add58f73b7708d48f0a4329b5b28facc1 100644 (file)
--- a/refs.c
+++ b/refs.c
return do_for_each_ref("refs/", fn, 0, 0, cb_data);
}
+int for_each_ref_in(const char *prefix, each_ref_fn fn, void *cb_data)
+{
+ return do_for_each_ref(prefix, fn, strlen(prefix), 0, cb_data);
+}
+
int for_each_tag_ref(each_ref_fn fn, void *cb_data)
{
- return do_for_each_ref("refs/tags/", fn, 10, 0, cb_data);
+ return for_each_ref_in("refs/tags/", fn, cb_data);
}
int for_each_branch_ref(each_ref_fn fn, void *cb_data)
{
- return do_for_each_ref("refs/heads/", fn, 11, 0, cb_data);
+ return for_each_ref_in("refs/heads/", fn, cb_data);
}
int for_each_remote_ref(each_ref_fn fn, void *cb_data)
{
- return do_for_each_ref("refs/remotes/", fn, 13, 0, cb_data);
+ return for_each_ref_in("refs/remotes/", fn, cb_data);
}
int for_each_rawref(each_ref_fn fn, void *cb_data)
index 29bdcecd4edb5e7281a4da36a06aa05e025f38a7..abb125754d7b23ef61fa9b130f1614ffea0a79de 100644 (file)
--- a/refs.h
+++ b/refs.h
typedef int each_ref_fn(const char *refname, const unsigned char *sha1, int flags, void *cb_data);
extern int head_ref(each_ref_fn, void *);
extern int for_each_ref(each_ref_fn, void *);
+extern int for_each_ref_in(const char *, each_ref_fn, void *);
extern int for_each_tag_ref(each_ref_fn, void *);
extern int for_each_branch_ref(each_ref_fn, void *);
extern int for_each_remote_ref(each_ref_fn, void *);