synopsys error handling lssue fixed. 96/163396/5 accepted/tizen/unified/20171214.050257 submit/tizen/20171214.015128
authorDoHyung Lim <delight.lim@samsung.com>
Mon, 11 Dec 2017 04:46:24 +0000 (13:46 +0900)
committerHye Kyoung Hwang <cookie@samsung.com>
Thu, 14 Dec 2017 01:48:24 +0000 (01:48 +0000)
shmid value always more than 0.
so, shmctl function return value define and check for memory free.

Change-Id: I4858522e88a3bef834c0c679a88f17528c006566
Signed-off-by: DoHyung Lim <delight.lim@samsung.com>
provider/browser-provider-shm.c

index 5919b14f075093f16700f5390b0ff9ffa108603d..b34a3787a466c33a0fdff88cdcc2af092fc2ef0f 100644 (file)
@@ -30,9 +30,14 @@ void bp_shm_free(bp_shm_defs *shm)
                if (shm->mem != NULL)
                        shmdt(shm->mem);
                shm->mem = NULL;
-               if (shm->id > 0)
-                       shmctl(shm->id, IPC_RMID, 0);
-               shm->id = -1;
+               if (shm->id > 0) {
+                       int ret_val = shmctl(shm->id, IPC_RMID, 0);
+                       if (ret_val != -1) {
+                               shm->id = -1;
+                       } else {
+                               TRACE_ERROR("[ERROR][SHM][%d] shmctl", ret_val);
+                       }
+               }
                free(shm->local);
                shm->local = NULL;
        }