git_transport parent;
git_repository *repo;
git_vector *refs;
+ git_headarray wants_list;
} transport_local;
/*
return error;
}
-static int local_send_wants(git_transport *GIT_UNUSED(transport), git_headarray *GIT_UNUSED(array))
+static int local_send_wants(git_transport *transport, git_headarray *array)
{
- GIT_UNUSED_ARG(tranport);
- GIT_UNUSED_ARG(array);
+ transport_local *t = (transport_local *) transport;
+ git_headarray *wants = &t->wants_list;
+
+ /*
+ * We need to store the list of wanted references so we can figure
+ * out what to transmit later.
+ */
+ wants->len = array->len;
+ wants->heads = array->heads;
/* We're local anyway, so we don't need this */
return GIT_SUCCESS;
t->parent.connect = local_connect;
t->parent.ls = local_ls;
+ t->parent.send_wants = local_send_wants;
t->parent.close = local_close;
t->parent.free = local_free;