From e97e022ef6f21512f397f7cf2756c399cf9dba33 Mon Sep 17 00:00:00 2001 From: Woochanlee Date: Wed, 7 Sep 2022 14:45:29 +0900 Subject: [PATCH] libaurum: Fix check_after_deref iter checked after refed. Change-Id: I0f86fb95befb894c55fc67c89f35fb9b07ad0b22 --- libaurum/src/UiDevice.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libaurum/src/UiDevice.cc b/libaurum/src/UiDevice.cc index 14727cb..a25b1cd 100644 --- a/libaurum/src/UiDevice.cc +++ b/libaurum/src/UiDevice.cc @@ -147,6 +147,10 @@ std::vector> UiDevice::getTizenWindowInfo() const } g_variant_get(body, "(a(iiiiibbiibbis))", &iter); + if (!iter) { + LOGE("Failed to get iter"); + goto out; + } LOGI("%-3s | %-6s | %-4s | %-4s | %-4s | %-4s | %-5s | %-5s | %-6s | %-3s | %-7s | %-6s | %-5s | %-20s", "No" ,"PID", "X", "Y", "W", "H", "Trans", "Alpha", "Opaque", "Vis", "Focused", "Mapped", "Layer", "Name"); while (g_variant_iter_loop(iter, "(iiiiibbiibbis)", @@ -172,9 +176,9 @@ std::vector> UiDevice::getTizenWindowInfo() const } } +out: if (iter) g_variant_iter_free(iter); -out: if (msg) g_object_unref(msg); if (reply) -- 2.34.1