From: Brandon Williams Date: Wed, 16 May 2018 22:57:58 +0000 (-0700) Subject: clone: convert cmd_clone to use refspec_item_init X-Git-Tag: v2.18.0-rc1~2^2~26 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eace274df8c63ccdbc5329a830ba3a5f04779051;p=git clone: convert cmd_clone to use refspec_item_init Convert 'cmd_clone()' to use 'refspec_item_init()' instead of relying on the old 'parse_fetch_refspec()' to initialize a single refspec item. Signed-off-by: Brandon Williams Signed-off-by: Junio C Hamano --- diff --git a/builtin/clone.c b/builtin/clone.c index 854088a3a2..8c5f4d8f07 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -895,8 +895,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) int err = 0, complete_refs_before_fetch = 1; int submodule_progress; - struct refspec_item *refspec; - const char *fetch_pattern; + struct refspec_item refspec; fetch_if_missing = 0; @@ -1078,8 +1077,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) if (option_required_reference.nr || option_optional_reference.nr) setup_reference(); - fetch_pattern = value.buf; - refspec = parse_fetch_refspec(1, &fetch_pattern); + refspec_item_init(&refspec, value.buf, REFSPEC_FETCH); strbuf_reset(&value); @@ -1139,7 +1137,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) refs = transport_get_remote_refs(transport, NULL); if (refs) { - mapped_refs = wanted_peer_refs(refs, refspec); + mapped_refs = wanted_peer_refs(refs, &refspec); /* * transport_get_remote_refs() may return refs with null sha-1 * in mapped_refs (see struct transport->get_refs_list @@ -1233,6 +1231,6 @@ int cmd_clone(int argc, const char **argv, const char *prefix) strbuf_release(&value); junk_mode = JUNK_LEAVE_ALL; - free(refspec); + refspec_item_clear(&refspec); return err; }