From 58e7088628a362fe9d3163429a12e5f828b5b200 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Tue, 3 Nov 2020 22:46:14 -0600 Subject: [PATCH] nir/find_array_copies: Don't assume all children exist Fixes: 9f3c595dfc4cd "nir/find_array_copies: Handle cast derefs" Reviewed-by: Caio Marcelo de Oliveira Filho Part-of: --- src/compiler/nir/nir_opt_find_array_copies.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/compiler/nir/nir_opt_find_array_copies.c b/src/compiler/nir/nir_opt_find_array_copies.c index 5c0fede765b..86ab25b9560 100644 --- a/src/compiler/nir/nir_opt_find_array_copies.c +++ b/src/compiler/nir/nir_opt_find_array_copies.c @@ -196,8 +196,10 @@ _foreach_child(match_cb cb, struct match_node *node, struct match_state *state) if (node->num_children == 0) { cb(node, state); } else { - for (unsigned i = 0; i < node->num_children; i++) - _foreach_child(cb, node->children[i], state); + for (unsigned i = 0; i < node->num_children; i++) { + if (node->children[i]) + _foreach_child(cb, node->children[i], state); + } } }