diff options
author | Brandon Williams <bmwill@google.com> | 2018-05-17 00:58:22 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-05-17 23:19:44 +0200 |
commit | afb1aed403de404c1e09fae5b8028f6b8f6982d3 (patch) | |
tree | d539c201158ef7b72b406287cf10e7374d013ab9 /remote.c | |
parent | remote: convert match_push_refs to take a struct refspec (diff) | |
download | git-afb1aed403de404c1e09fae5b8028f6b8f6982d3.tar.xz git-afb1aed403de404c1e09fae5b8028f6b8f6982d3.zip |
remote: convert check_push_refs to take a struct refspec
Convert 'check_push_refs()' to take a 'struct refspec' as a parameter
instead of an array of 'const char *'.
Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'remote.c')
-rw-r--r-- | remote.c | 14 |
1 files changed, 5 insertions, 9 deletions
@@ -1255,24 +1255,20 @@ static void prepare_ref_index(struct string_list *ref_index, struct ref *ref) * but we can catch some errors early before even talking to the * remote side. */ -int check_push_refs(struct ref *src, int nr_refspec, const char **refspec_names) +int check_push_refs(struct ref *src, struct refspec *rs) { - struct refspec refspec = REFSPEC_INIT_PUSH; int ret = 0; int i; - refspec_appendn(&refspec, refspec_names, nr_refspec); - - for (i = 0; i < refspec.nr; i++) { - struct refspec_item *rs = &refspec.items[i]; + for (i = 0; i < rs->nr; i++) { + struct refspec_item *item = &rs->items[i]; - if (rs->pattern || rs->matching) + if (item->pattern || item->matching) continue; - ret |= match_explicit_lhs(src, rs, NULL, NULL); + ret |= match_explicit_lhs(src, item, NULL, NULL); } - refspec_clear(&refspec); return ret; } |