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 <bmwill@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
8ca69370c8
commit
eace274df8
@ -895,8 +895,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
|
|||||||
int err = 0, complete_refs_before_fetch = 1;
|
int err = 0, complete_refs_before_fetch = 1;
|
||||||
int submodule_progress;
|
int submodule_progress;
|
||||||
|
|
||||||
struct refspec_item *refspec;
|
struct refspec_item refspec;
|
||||||
const char *fetch_pattern;
|
|
||||||
|
|
||||||
fetch_if_missing = 0;
|
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)
|
if (option_required_reference.nr || option_optional_reference.nr)
|
||||||
setup_reference();
|
setup_reference();
|
||||||
|
|
||||||
fetch_pattern = value.buf;
|
refspec_item_init(&refspec, value.buf, REFSPEC_FETCH);
|
||||||
refspec = parse_fetch_refspec(1, &fetch_pattern);
|
|
||||||
|
|
||||||
strbuf_reset(&value);
|
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);
|
refs = transport_get_remote_refs(transport, NULL);
|
||||||
|
|
||||||
if (refs) {
|
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
|
* transport_get_remote_refs() may return refs with null sha-1
|
||||||
* in mapped_refs (see struct transport->get_refs_list
|
* 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);
|
strbuf_release(&value);
|
||||||
junk_mode = JUNK_LEAVE_ALL;
|
junk_mode = JUNK_LEAVE_ALL;
|
||||||
|
|
||||||
free(refspec);
|
refspec_item_clear(&refspec);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user