@@ -1389,13 +1389,18 @@ int parse_hide_refs_config(const char *var, const char *value, const char *secti
}
int ref_is_hidden(const char *refname, const char *refname_full)
+{
+ return ref_is_matched(hide_refs, refname, refname_full);
+}
+
+int ref_is_matched(struct string_list *match_refs, const char *refname, const char *refname_full)
{
int i;
- if (!hide_refs)
+ if (!match_refs)
return 0;
- for (i = hide_refs->nr - 1; i >= 0; i--) {
- const char *match = hide_refs->items[i].string;
+ for (i = match_refs->nr - 1; i >= 0; i--) {
+ const char *match = match_refs->items[i].string;
const char *subject;
int neg = 0;
const char *p;
@@ -739,6 +739,7 @@ int parse_hide_refs_config(const char *var, const char *value, const char *);
* parameter always points to the full ref name.
*/
int ref_is_hidden(const char *, const char *);
+int ref_is_matched(struct string_list *, const char *, const char *);
enum ref_type {
REF_TYPE_PER_WORKTREE, /* refs inside refs/ but not shared */
Add new function `ref_is_matched()` to reuse `ref_is_hidden()`. Will use this function for `receive-pack` to check commands with specific prefixes. Test case t5512 covered this change. Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com> --- refs.c | 11 ++++++++--- refs.h | 1 + 2 files changed, 9 insertions(+), 3 deletions(-)