Re: [PATCH v5 07/10] introduce fetch-object: fetch one promisor object
- From
Christian Couder <christian.couder@gmail.com>
- Date
- Dec 2, 2017, 20:33 UTC
- Message-ID
- <CAP8UFD1dm4EJXU3VdgGMDawy3jCT20hHQXwZxvtwy7_eomz9Fw@mail.gmail.com>
- In-Reply-To
- <20171121210720.21376-8-git@jeffhostetler.com>
On Tue, Nov 21, 2017 at 10:07 PM, Jeff Hostetler <git@jeffhostetler.com> wrote:
> From: Jonathan Tan <jonathantanmy@google.com>
Show 17 quoted lines
> +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.