Fix memory leak 89/91889/1
authorjusung son <jusung07.son@samsung.com>
Wed, 12 Oct 2016 05:47:14 +0000 (14:47 +0900)
committerjusung son <jusung07.son@samsung.com>
Wed, 12 Oct 2016 05:47:14 +0000 (14:47 +0900)
Change-Id: Ie029d2461a4e5826874791e7238c02de70e15701
Signed-off-by: jusung son <jusung07.son@samsung.com>
src/message-port.c

index 4d9e68c..17c4943 100755 (executable)
@@ -272,6 +272,8 @@ static bool __is_preloaded(const char *local_appid, const char *remote_appid)
                pkgmgrinfo_appinfo_destroy_appinfo(handle);
                return false;
        }
+       pkgmgrinfo_appinfo_destroy_appinfo(handle);
+
        ret = pkgmgrinfo_appinfo_get_usr_appinfo(remote_appid, getuid(), &handle);
        if (ret != PMINFO_R_OK) {
                _LOGE("Failed to get the appinfo. %d", ret);
@@ -1176,6 +1178,7 @@ int __register_dbus_interface(const char *port_name, bool is_trusted)
                        &error);
        if (error) {
                _LOGE("RequestName fail : %s", error->message);
+               g_error_free(error);
                goto out;
        }
        if (result == NULL) {
@@ -1477,6 +1480,8 @@ static int __message_port_send_message(const char *remote_appid, const char *rem
                                        _LOGE("g_unix_fd_list_append [%s]", err->message);
                                        ret = MESSAGEPORT_ERROR_IO_ERROR;
                                        g_error_free(err);
+                                       close(sock_pair[SOCK_PAIR_SENDER]);
+                                       close(sock_pair[SOCK_PAIR_RECEIVER]);
                                        goto out;
                                }
                                port_info->send_sock_fd = sock_pair[SOCK_PAIR_SENDER];