summaryrefslogtreecommitdiff
path: root/ui-diff.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-03-13 02:52:35 (GMT)
committerJason A. Donenfeld <Jason@zx2c4.com>2020-03-13 23:48:34 (GMT)
commit6a8d6d4b5021af6c90ca0da806691987df449469 (patch)
treedb4984608a96ce279e25c580895d4084d2b1e24f /ui-diff.c
parent892ba8c3cc0617d2087a2337d8c6e71524d7b49c (diff)
downloadcgit-6a8d6d4b5021af6c90ca0da806691987df449469.zip
cgit-6a8d6d4b5021af6c90ca0da806691987df449469.tar.gz
cgit-6a8d6d4b5021af6c90ca0da806691987df449469.tar.bz2
global: use proper accessors for maybe_tree
A previous commit changed ->tree to ->maybe_tree throughout, which may have worked at the time, but wasn't safe, because maybe_tree is loaded lazily. This manifested itself in crashes when using the "follow" log feature. The proper fix is to use the correct contextual accessors everytime we want access to maybe_tree. Thankfully, the commit.cocci script takes care of creating mostly-correct patches that we could then fix up, resulting in this commit here. Fixes: 255b78f ("git: update to v2.18.0") Reviewed-by: Christian Hesse <mail@eworm.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'ui-diff.c')
-rw-r--r--ui-diff.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ui-diff.c b/ui-diff.c
index c60aefd..329c350 100644
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -413,7 +413,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
"Bad commit: %s", oid_to_hex(new_rev_oid));
return;
}
- new_tree_oid = &commit->maybe_tree->object.oid;
+ new_tree_oid = get_commit_tree_oid(commit);
if (old_rev) {
if (get_oid(old_rev, old_rev_oid)) {
@@ -434,7 +434,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
"Bad commit: %s", oid_to_hex(old_rev_oid));
return;
}
- old_tree_oid = &commit2->maybe_tree->object.oid;
+ old_tree_oid = get_commit_tree_oid(commit2);
} else {
old_tree_oid = NULL;
}