Browse Source

alloc: add repository argument to alloc_commit_index

This is a small mechanical change; it doesn't change the
implementation to handle repositories other than the_repository yet.
Use a macro to catch callers passing a repository other than
the_repository at compile time.

Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Stefan Beller 7 years ago committed by Junio C Hamano
parent
commit
dd5d9deb01
  1. 4
      alloc.c
  2. 3
      cache.h
  3. 2
      object.c

4
alloc.c

@ -82,7 +82,7 @@ void *alloc_object_node_the_repository(void) @@ -82,7 +82,7 @@ void *alloc_object_node_the_repository(void)

static struct alloc_state commit_state;

unsigned int alloc_commit_index(void)
unsigned int alloc_commit_index_the_repository(void)
{
static unsigned int count;
return count++;
@ -92,7 +92,7 @@ void *alloc_commit_node_the_repository(void) @@ -92,7 +92,7 @@ void *alloc_commit_node_the_repository(void)
{
struct commit *c = alloc_node(&commit_state, sizeof(struct commit));
c->object.type = OBJ_COMMIT;
c->index = alloc_commit_index();
c->index = alloc_commit_index(the_repository);
return c;
}


3
cache.h

@ -1776,7 +1776,8 @@ extern void *alloc_tag_node_the_repository(void); @@ -1776,7 +1776,8 @@ extern void *alloc_tag_node_the_repository(void);
extern void *alloc_object_node_the_repository(void);
#define alloc_report(r) alloc_report_##r()
extern void alloc_report_the_repository(void);
extern unsigned int alloc_commit_index(void);
#define alloc_commit_index(r) alloc_commit_index_##r()
extern unsigned int alloc_commit_index_the_repository(void);

/* pkt-line.c */
void packet_trace_identity(const char *prog);

2
object.c

@ -162,7 +162,7 @@ void *object_as_type(struct object *obj, enum object_type type, int quiet) @@ -162,7 +162,7 @@ void *object_as_type(struct object *obj, enum object_type type, int quiet)
return obj;
else if (obj->type == OBJ_NONE) {
if (type == OBJ_COMMIT)
((struct commit *)obj)->index = alloc_commit_index();
((struct commit *)obj)->index = alloc_commit_index(the_repository);
obj->type = type;
return obj;
}

Loading…
Cancel
Save