From 0e73668f07348218afa69f07adbf848908eaf4a4 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Pawe=C5=82=20Stawicki?=
Date: Thu, 15 Mar 2018 19:17:23 +0100
Subject: [PATCH] [prevent][36724] Fix for resource leakage
Change-Id: Ib0407cf3cf1de81e7c78c9d969daa067e0af428a
---
test/at_spi2_tool.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/test/at_spi2_tool.c b/test/at_spi2_tool.c
index c0daae4..d7b91d5 100644
--- a/test/at_spi2_tool.c
+++ b/test/at_spi2_tool.c
@@ -241,7 +241,10 @@ static char *_get_states(AtspiAccessible *node, int length_limit)
{
AtspiStateSet *node_state_set = atspi_accessible_get_state_set(node);
GArray *states = atspi_state_set_get_states(node_state_set);
- if (!states) return NULL;
+ if (!states) {
+ g_clear_object(&node_state_set);
+ return NULL;
+ }
g_array_sort(states, _int_sort_function);
AtspiStateType state_type;
@@ -258,9 +261,8 @@ static char *_get_states(AtspiAccessible *node, int length_limit)
_combine_strings(&state_string, node_state_str);
}
- if (states)
- g_array_free(states, 0);
- g_object_unref(node_state_set);
+ g_array_free(states, 0);
+ g_clear_object(&node_state_set);
_truncate_string(state_string, length_limit);
--
2.7.4