From 2b7db2376c54aa2c799c5bcb764fd888562c2dd3 Mon Sep 17 00:00:00 2001 From: Daniel Boles Date: Tue, 1 Aug 2017 20:41:23 +0100 Subject: [PATCH] bindings: Avoid iterating array if it is never set If query.return_type is not one we want, binding_compose_params() is not called, and so params remains a NULL pointer. However, the code was then unconditionally iterating it regardless. Don't if it is still NULL. CID 1452218 (#1 of 1): Explicit null dereferenced (FORWARD_NULL) 15. var_deref_op: Dereferencing null pointer params. --- gtk/gtkbindings.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gtk/gtkbindings.c b/gtk/gtkbindings.c index 57cddec37f..d8084c1c80 100644 --- a/gtk/gtkbindings.c +++ b/gtk/gtkbindings.c @@ -654,9 +654,13 @@ gtk_binding_entry_activate (GtkBindingEntry *entry, else handled = TRUE; - for (i = 0; i < query.n_params + 1; i++) - g_value_unset (¶ms[i]); - g_free (params); + if (params != NULL) + { + for (i = 0; i < query.n_params + 1; i++) + g_value_unset (¶ms[i]); + + g_free (params); + } if (entry->destroyed) break;