Memory leak error
[platform/core/appfw/pkgmgr-server.git] / src / pkgmgr-server.c
index 89338ea..480b341 100644 (file)
@@ -841,9 +841,13 @@ static int __process_install(struct backend_job *job)
                return -1;
 
        req_id = g_shell_quote(job->req_id);
+       if (!req_id)
+               return -1;
        pkgid = g_shell_quote(job->pkgid);
-       if (!req_id || !pkgid)
+       if (!pkgid) {
+               g_free(req_id);
                return -1;
+       }
 
        snprintf(args, sizeof(args), "%s -k %s -i %s -u %d %s", backend_cmd,
                        req_id, pkgid, (int)job->target_uid, job->args);
@@ -872,10 +876,13 @@ static int __process_mount_install(struct backend_job *job)
                return -1;
 
        req_id = g_shell_quote(job->req_id);
+       if (!req_id)
+               return -1;
        pkgid = g_shell_quote(job->pkgid);
-       if (!req_id || !pkgid)
+       if (!pkgid) {
+               g_free(req_id);
                return -1;
-
+       }
        snprintf(args, sizeof(args), "%s -k %s -w %s -u %d %s", backend_cmd,
                        req_id, pkgid, (int)job->target_uid, job->args);
 
@@ -903,9 +910,13 @@ static int __process_reinstall(struct backend_job *job)
                return -1;
 
        req_id = g_shell_quote(job->req_id);
+       if (!req_id)
+               return -1;
        pkgid = g_shell_quote(job->pkgid);
-       if (!req_id || !pkgid)
+       if (!pkgid) {
+               g_free(req_id);
                return -1;
+       }
 
        snprintf(args, sizeof(args), "%s -k %s -r %s -u %d", backend_cmd,
                        req_id, pkgid, (int)job->target_uid);