From 16f4bd564cb46c12fbfee1778a7b566df2f256b9 Mon Sep 17 00:00:00 2001 From: Jihoon Kim Date: Mon, 17 Jan 2022 13:19:08 +0900 Subject: [PATCH] Fix issue detected by static analysis tool check_after_deref: Null-checking key_event_builder suggests that it may be null, but it has already been dereferenced on all paths leading to the check. Change-Id: Ib704c19a9e2743719c43aea178122d0f1fac34fe Signed-off-by: Jihoon Kim --- engine-loader/src/engine_loader.cpp | 8 +++++--- ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp | 1 + 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/engine-loader/src/engine_loader.cpp b/engine-loader/src/engine_loader.cpp index c8a58cf..e5f9544 100644 --- a/engine-loader/src/engine_loader.cpp +++ b/engine-loader/src/engine_loader.cpp @@ -228,6 +228,9 @@ public: { GVariantBuilder *key_event_builder = NULL; key_event_builder = g_variant_builder_new(G_VARIANT_TYPE("a{sv}")); + if (!key_event_builder) + return; + g_variant_builder_add(key_event_builder, "{sv}", "key_code", g_variant_new_uint32(key.code)); g_variant_builder_add(key_event_builder, "{sv}", "key_mask", g_variant_new_uint16(key.mask)); g_variant_builder_add(key_event_builder, "{sv}", "key_layout", g_variant_new_uint16(key.layout)); @@ -238,8 +241,7 @@ public: if (ret != ENGINE_LOADER_ERROR_NONE) LOGD("Failed to forward key event"); - if (key_event_builder) - g_variant_builder_unref(key_event_builder); + g_variant_builder_unref(key_event_builder); } void slot_update_lookup_table(IMEngineInstanceBase *si, const LookupTable &table) @@ -775,4 +777,4 @@ void EngineLoader::set_surrounding_text(char* text, int cursor) SECURE_LOGD("surrounding_text : %s", text); m_impl->surrounding_text = strdup(text); m_impl->cursor_pos = cursor; -} \ No newline at end of file +} diff --git a/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp b/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp index 7e87f09..80341f5 100644 --- a/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp +++ b/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp @@ -1212,6 +1212,7 @@ check_input_resource (WSCContextISF *wsc_ctx, Input_Resource input_res) if (_resource_check_timer) ecore_timer_del (_resource_check_timer); + _resource_check_timer = ecore_timer_add (2.0, change_block_status_timer_cb, context_scim); context_scim->impl->block_input_resource = true; } -- 2.7.4