From: Daehyeon Jung Date: Mon, 16 Sep 2019 07:02:40 +0000 (+0900) Subject: Fix static analysis issues X-Git-Tag: submit/tizen/20190917.094250^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fheads%2Faccepted%2Ftizen_5.5_unified;p=platform%2Fcore%2Fappfw%2Fcapmgr.git Fix static analysis issues Change-Id: I3cacd5405bfb6fd745d7ddf343964da10e5ae865 --- diff --git a/src/common/appcontrol_manager.cc b/src/common/appcontrol_manager.cc index 874c0aa..d2dd194 100644 --- a/src/common/appcontrol_manager.cc +++ b/src/common/appcontrol_manager.cc @@ -64,6 +64,7 @@ void AppControlManager::LocalReplyCb(bundle* b, int request_code, gint msg_id = GPOINTER_TO_INT(data); DBusService::SendAppControlReply(msg_id, raw, len); + free(raw); } int AppControlManager::LaunchLocalApplication(const unsigned char* bundle_data, diff --git a/src/common/mdg_manager.cc b/src/common/mdg_manager.cc index 79a90a4..16d06b0 100644 --- a/src/common/mdg_manager.cc +++ b/src/common/mdg_manager.cc @@ -225,6 +225,7 @@ void MDGManager::ReceiveDataCb(int result, char* device_id, char* channel_id, if (!AppControlManager::GetAppControlManager().CheckAppControl( device_id, mdgmgr->capmgr_, data, datasize)) { LOG(ERROR) << "The appcontrol is not valid"; + delete info; return; } @@ -327,7 +328,7 @@ bool MDGManager::GroupForeachCb(mdg_device_h device, void* user_data) { return true; } - char* device_id; + char* device_id = nullptr; int ret = mdg_device_info_get_device_id(device, &device_id); if (ret != MDG_ERROR_NONE) { LOG(ERROR) << "Failed to get device id: " << MDGErrorToString(ret); @@ -337,6 +338,7 @@ bool MDGManager::GroupForeachCb(mdg_device_h device, void* user_data) { std::vector infos = mdgmgr->pm_->LoadLocalPackages(); if (infos.empty()) { LOG(ERROR) << "Failed to load package list!"; + free(device_id); return true; } @@ -346,7 +348,7 @@ bool MDGManager::GroupForeachCb(mdg_device_h device, void* user_data) { mdgmgr->SendData(device_id, Command::ADD_PACKAGEINFO, packages_data, packages.size()); delete[] packages_data; - + free(device_id); return true; } @@ -477,6 +479,11 @@ bool MDGManager::AddLocalDevice() { pm_->StoreRemotePackages("localhost", infos); LOG(ERROR) << "Add local device done"; + + free(device_name); + free(model_name); + free(platform_ver); + free(profile); return true; } diff --git a/src/unit_tests/dbus_service_test.cc b/src/unit_tests/dbus_service_test.cc index 7c8875a..aed129c 100644 --- a/src/unit_tests/dbus_service_test.cc +++ b/src/unit_tests/dbus_service_test.cc @@ -105,7 +105,8 @@ void __bundle_to_gvar_arr(bundle* b, GVariantBuilder** arr, guint* arr_len) { void __gvar_arr_to_cstr(GVariantIter* gvar_iter, guint len, char** str) { guchar* arr = reinterpret_cast(g_try_malloc(len)); for (unsigned int i = 0; i < len; i++) { - g_variant_iter_loop(gvar_iter, "y", &arr[i]); + if (!g_variant_iter_loop(gvar_iter, "y", &arr[i])) + break; } *str = reinterpret_cast(arr); @@ -159,9 +160,10 @@ TEST_F(DBusServiceTest, SendAppControlTest) { __gvar_arr_to_cstr(reply_iter, reply_len, &reply_str); g_variant_iter_free(reply_iter); - ASSERT_EQ(g_strcmp0(reply_str, test_str), 0); + int ret = g_strcmp0(reply_str, test_str); g_free(reply_str); free(val); + ASSERT_EQ(ret, 0); } int __fake_creds_gdbus_get_client(GDBusConnection* conn,