Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
commit: allow prepare_commit_graft to handle arbitrary repositories
author
Stefan Beller
<sbeller@google.com>
Thu, 17 May 2018 22:51:53 +0000
(15:51 -0700)
committer
Junio C Hamano
<gitster@pobox.com>
Thu, 17 May 2018 23:13:10 +0000
(08:13 +0900)
Move the global variable 'commit_graft_prepared' into the object
pool and convert the function prepare_commit_graft to work
an arbitrary repositories.
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
commit.c
patch
|
blob
|
history
object.h
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
eee4502
)
diff --git
a/commit.c
b/commit.c
index 24028fd257a661734a60d86f748517fca7fa7a94..eef1675d6926bded34c87c2573283aa54c75360d 100644
(file)
--- a/
commit.c
+++ b/
commit.c
@@
-196,19
+196,17
@@
static int read_graft_file(struct repository *r, const char *graft_file)
return 0;
}
return 0;
}
-#define prepare_commit_graft(r) prepare_commit_graft_##r()
-static void prepare_commit_graft_the_repository(void)
+static void prepare_commit_graft(struct repository *r)
{
{
- static int commit_graft_prepared;
char *graft_file;
char *graft_file;
- if (commit_graft_prepared)
+ if (
r->parsed_objects->
commit_graft_prepared)
return;
return;
- graft_file = get_graft_file(
the_repository
);
- read_graft_file(
the_repository
, graft_file);
+ graft_file = get_graft_file(
r
);
+ read_graft_file(
r
, graft_file);
/* make sure shallows are read */
/* make sure shallows are read */
- is_repository_shallow(
the_repository
);
- commit_graft_prepared = 1;
+ is_repository_shallow(
r
);
+
r->parsed_objects->
commit_graft_prepared = 1;
}
struct commit_graft *lookup_commit_graft_the_repository(const struct object_id *oid)
}
struct commit_graft *lookup_commit_graft_the_repository(const struct object_id *oid)
diff --git
a/object.h
b/object.h
index a314331acafd55d89126c94fb938f03e5d69fa5c..4af499ab03ef4af5db37d05922a8257651f99351 100644
(file)
--- a/
object.h
+++ b/
object.h
@@
-20,6
+20,8
@@
struct parsed_object_pool {
int is_shallow;
struct stat_validity *shallow_stat;
char *alternate_shallow_file;
int is_shallow;
struct stat_validity *shallow_stat;
char *alternate_shallow_file;
+
+ int commit_graft_prepared;
};
struct parsed_object_pool *parsed_object_pool_new(void);
};
struct parsed_object_pool *parsed_object_pool_new(void);