Remove fetch-object.{c,h} in favor of promisor-remote.{c,h}
As fetch_objects() is now used only in promisor-remote.c and should't be used outside it, let's move it into promisor-remote.c, make it static there, and remove fetch-object.{c,h}. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
75de085211
commit
db27dca5cf
1
Makefile
1
Makefile
@ -880,7 +880,6 @@ LIB_OBJS += ewah/ewah_io.o
|
||||
LIB_OBJS += ewah/ewah_rlw.o
|
||||
LIB_OBJS += exec-cmd.o
|
||||
LIB_OBJS += fetch-negotiator.o
|
||||
LIB_OBJS += fetch-object.o
|
||||
LIB_OBJS += fetch-pack.o
|
||||
LIB_OBJS += fsck.o
|
||||
LIB_OBJS += fsmonitor.o
|
||||
|
@ -1,43 +0,0 @@
|
||||
#include "cache.h"
|
||||
#include "packfile.h"
|
||||
#include "pkt-line.h"
|
||||
#include "strbuf.h"
|
||||
#include "transport.h"
|
||||
#include "fetch-object.h"
|
||||
|
||||
static int fetch_refs(const char *remote_name, struct ref *ref)
|
||||
{
|
||||
struct remote *remote;
|
||||
struct transport *transport;
|
||||
int original_fetch_if_missing = fetch_if_missing;
|
||||
int res;
|
||||
|
||||
fetch_if_missing = 0;
|
||||
remote = remote_get(remote_name);
|
||||
if (!remote->url[0])
|
||||
die(_("Remote with no URL"));
|
||||
transport = transport_get(remote, remote->url[0]);
|
||||
|
||||
transport_set_option(transport, TRANS_OPT_FROM_PROMISOR, "1");
|
||||
transport_set_option(transport, TRANS_OPT_NO_DEPENDENTS, "1");
|
||||
res = transport_fetch_refs(transport, ref);
|
||||
fetch_if_missing = original_fetch_if_missing;
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
int fetch_objects(const char *remote_name, const struct object_id *oids,
|
||||
int oid_nr)
|
||||
{
|
||||
struct ref *ref = NULL;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < oid_nr; i++) {
|
||||
struct ref *new_ref = alloc_ref(oid_to_hex(&oids[i]));
|
||||
oidcpy(&new_ref->old_oid, &oids[i]);
|
||||
new_ref->exact_oid = 1;
|
||||
new_ref->next = ref;
|
||||
ref = new_ref;
|
||||
}
|
||||
return fetch_refs(remote_name, ref);
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
#ifndef FETCH_OBJECT_H
|
||||
#define FETCH_OBJECT_H
|
||||
|
||||
struct object_id;
|
||||
|
||||
int fetch_objects(const char *remote_name, const struct object_id *oids,
|
||||
int oid_nr);
|
||||
|
||||
#endif
|
@ -2,7 +2,45 @@
|
||||
#include "object-store.h"
|
||||
#include "promisor-remote.h"
|
||||
#include "config.h"
|
||||
#include "fetch-object.h"
|
||||
#include "transport.h"
|
||||
|
||||
static int fetch_refs(const char *remote_name, struct ref *ref)
|
||||
{
|
||||
struct remote *remote;
|
||||
struct transport *transport;
|
||||
int original_fetch_if_missing = fetch_if_missing;
|
||||
int res;
|
||||
|
||||
fetch_if_missing = 0;
|
||||
remote = remote_get(remote_name);
|
||||
if (!remote->url[0])
|
||||
die(_("Remote with no URL"));
|
||||
transport = transport_get(remote, remote->url[0]);
|
||||
|
||||
transport_set_option(transport, TRANS_OPT_FROM_PROMISOR, "1");
|
||||
transport_set_option(transport, TRANS_OPT_NO_DEPENDENTS, "1");
|
||||
res = transport_fetch_refs(transport, ref);
|
||||
fetch_if_missing = original_fetch_if_missing;
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static int fetch_objects(const char *remote_name,
|
||||
const struct object_id *oids,
|
||||
int oid_nr)
|
||||
{
|
||||
struct ref *ref = NULL;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < oid_nr; i++) {
|
||||
struct ref *new_ref = alloc_ref(oid_to_hex(&oids[i]));
|
||||
oidcpy(&new_ref->old_oid, &oids[i]);
|
||||
new_ref->exact_oid = 1;
|
||||
new_ref->next = ref;
|
||||
ref = new_ref;
|
||||
}
|
||||
return fetch_refs(remote_name, ref);
|
||||
}
|
||||
|
||||
static struct promisor_remote *promisors;
|
||||
static struct promisor_remote **promisors_tail = &promisors;
|
||||
|
Loading…
Reference in New Issue
Block a user