From: Brandon Williams Date: Wed, 16 May 2018 22:57:56 +0000 (-0700) Subject: remote: convert check_push_refs to use struct refspec X-Git-Tag: v2.18.0-rc0~10^2~29 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0460f4727793663b34fbf0711f60394de730f833;p=thirdparty%2Fgit.git remote: convert check_push_refs to use struct refspec Convert 'check_push_refs()' to use 'struct refspec'. Signed-off-by: Brandon Williams Signed-off-by: Junio C Hamano --- diff --git a/remote.c b/remote.c index 89820c4769..1918551182 100644 --- a/remote.c +++ b/remote.c @@ -1282,12 +1282,14 @@ static void prepare_ref_index(struct string_list *ref_index, struct ref *ref) */ int check_push_refs(struct ref *src, int nr_refspec, const char **refspec_names) { - struct refspec_item *refspec = parse_push_refspec(nr_refspec, refspec_names); + struct refspec refspec = REFSPEC_INIT_PUSH; int ret = 0; int i; - for (i = 0; i < nr_refspec; i++) { - struct refspec_item *rs = refspec + i; + refspec_appendn(&refspec, refspec_names, nr_refspec); + + for (i = 0; i < refspec.nr; i++) { + struct refspec_item *rs = &refspec.items[i]; if (rs->pattern || rs->matching) continue; @@ -1295,7 +1297,7 @@ int check_push_refs(struct ref *src, int nr_refspec, const char **refspec_names) ret |= match_explicit_lhs(src, rs, NULL, NULL); } - free_refspec(nr_refspec, refspec); + refspec_clear(&refspec); return ret; }