From: Derrick Stolee via GitGitGadget Date: Mon, 11 May 2020 11:56:10 GMT Subject: [PATCH v2 03/12] bloom: parse commit before computing filters Message-ID: <0e08cec78d325452f9901501b2e0b53b3145a022.1589198180.git.gitgitgadget@gmail.com> In-Reply-To: From: Derrick Stolee When computing changed-path Bloom filters for a commit, we need to know if the commit has a parent or not. If the commit is not parsed, then its parent pointer will be NULL. As far as I can tell, the only opportunity to reach this code without parsing the commit is inside "test-tool bloom get_filter_for_commit" but it is best to be safe. Signed-off-by: Derrick Stolee --- bloom.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bloom.c b/bloom.c index 2e3e0f5037b..96792782719 100644 --- a/bloom.c +++ b/bloom.c @@ -193,6 +193,9 @@ struct bloom_filter *get_bloom_filter(struct repository *r, diffopt.max_changes = max_changes; diff_setup_done(&diffopt); + /* ensure commit is parsed so we have parent information */ + repo_parse_commit(r, c); + if (c->parents) diff_tree_oid(&c->parents->item->object.oid, &c->object.oid, "", &diffopt); else -- gitgitgadget