From: Junio C Hamano Date: Fri, 11 Dec 2015 19:14:38 +0000 (-0800) Subject: Merge branch 'sn/null-pointer-arith-in-mark-tree-uninteresting' into maint X-Git-Tag: v2.7.0-rc1~7^2~1 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/58e3dd21f68c5eec945e7ddd4690733bd0103ce5?hp=abca668a93f0039c8c3fe81a6625fcdf81c35bdf Merge branch 'sn/null-pointer-arith-in-mark-tree-uninteresting' into maint mark_tree_uninteresting() has code to handle the case where it gets passed a NULL pointer in its 'tree' parameter, but the function had 'object = &tree->object' assignment before checking if tree is NULL. This gives a compiler an excuse to declare that tree will never be NULL and apply a wrong optimization. Avoid it. * sn/null-pointer-arith-in-mark-tree-uninteresting: revision.c: fix possible null pointer arithmetic --- diff --git a/revision.c b/revision.c index 351fb5b9f1..f6caef0672 100644 --- a/revision.c +++ b/revision.c @@ -135,10 +135,12 @@ static void mark_tree_contents_uninteresting(struct tree *tree) void mark_tree_uninteresting(struct tree *tree) { - struct object *obj = &tree->object; + struct object *obj; if (!tree) return; + + obj = &tree->object; if (obj->flags & UNINTERESTING) return; obj->flags |= UNINTERESTING;