diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2018-06-27 15:24:31 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-06-27 19:27:05 +0200 |
commit | 0cbef8f8ce6ff434011ecbf3d8d2d41ba6f10c70 (patch) | |
tree | 71d2621ee43894c4ae45b607f8cb73c9324f5ce4 /commit-graph.c | |
parent | commit: force commit to parse from object database (diff) | |
download | git-0cbef8f8ce6ff434011ecbf3d8d2d41ba6f10c70.tar.xz git-0cbef8f8ce6ff434011ecbf3d8d2d41ba6f10c70.zip |
commit-graph: load a root tree from specific graph
When lazy-loading a tree for a commit, it will be important to select
the tree from a specific struct commit_graph. Create a new method that
specifies the commit-graph file and use that in
get_commit_tree_in_graph().
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to '')
-rw-r--r-- | commit-graph.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/commit-graph.c b/commit-graph.c index e77b19971d..9e228d3bb5 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -362,14 +362,20 @@ static struct tree *load_tree_for_commit(struct commit_graph *g, struct commit * return c->maybe_tree; } -struct tree *get_commit_tree_in_graph(const struct commit *c) +static struct tree *get_commit_tree_in_graph_one(struct commit_graph *g, + const struct commit *c) { if (c->maybe_tree) return c->maybe_tree; if (c->graph_pos == COMMIT_NOT_FROM_GRAPH) - BUG("get_commit_tree_in_graph called from non-commit-graph commit"); + BUG("get_commit_tree_in_graph_one called from non-commit-graph commit"); + + return load_tree_for_commit(g, (struct commit *)c); +} - return load_tree_for_commit(commit_graph, (struct commit *)c); +struct tree *get_commit_tree_in_graph(const struct commit *c) +{ + return get_commit_tree_in_graph_one(commit_graph, c); } static void write_graph_chunk_fanout(struct hashfile *f, |