Fix memory leak
[platform/core/appfw/message-port.git] / 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];