On Tue, Nov 21, 2017 at 10:07 PM, Jeff Hostetler <[email protected]> wrote:
> From: Jonathan Tan <[email protected]>
> +void fetch_object(const char *remote_name, const unsigned char *sha1)
> +{
> + struct remote *remote;
> + struct transport *transport;
> + struct ref *ref;
> +
> + remote = remote_get(remote_name);
> + if (!remote->url[0])
> + die(_("Remote with no URL"));
> + transport = transport_get(remote, remote->url[0]);
> +
> + ref = alloc_ref(sha1_to_hex(sha1));
> + hashcpy(ref->old_oid.hash, sha1);
> + transport_set_option(transport, TRANS_OPT_FROM_PROMISOR, "1");
> + transport_set_option(transport, TRANS_OPT_NO_HAVES, "1");
> + transport_fetch_refs(transport, ref);
> +}
I think it would be interesting to return what transport_fetch_refs()
returns, so that a caller could know if an error happened.