Browse Source

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>
maint
Brandon Williams 7 years ago committed by Junio C Hamano
parent
commit
eace274df8
  1. 10
      builtin/clone.c

10
builtin/clone.c

@ -895,8 +895,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) @@ -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) @@ -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) @@ -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) @@ -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;
}

Loading…
Cancel
Save