From: yoonki.park Date: Wed, 10 Jul 2013 05:47:12 +0000 (+0900) Subject: remove resource leak according to prevent rules X-Git-Tag: submit/tizen_2.2/20130715.044849~2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f44e8acdf9e0b2782e0676ca398a672b324141c7;p=sdk%2Ftarget%2Fsdbd.git remove resource leak according to prevent rules Change-Id: I19fa7eec90d3ecbcb2fbcef7c8704ce2baabd296 Signed-off-by: yoonki.park --- diff --git a/src/file_sync_service.c b/src/file_sync_service.c index 85bb31c..1c953cd 100644 --- a/src/file_sync_service.c +++ b/src/file_sync_service.c @@ -58,6 +58,7 @@ struct sync_permit_rule sdk_sync_permit_rule[] = { static void set_syncfile_smack_label(char *src) { + char *label_transmuted = NULL; char *label = NULL; char *src_chr = strrchr(src, '/'); int pos = src_chr - src + 1; @@ -71,11 +72,10 @@ static void set_syncfile_smack_label(char *src) { snprintf(dirname, pos, "%s", src); //D("src:[%s], dirname:[%s]\n", src, dirname); - int rc = smack_getlabel(dirname, &label, SMACK_LABEL_TRANSMUTE); + int rc = smack_getlabel(dirname, &label_transmuted, SMACK_LABEL_TRANSMUTE); - if (rc == 0 && label != NULL) { - if (!strcmp("TRUE", label)) { - free(label); + if (rc == 0 && label_transmuted != NULL) { + if (!strcmp("TRUE", label_transmuted)) { rc = smack_getlabel(dirname, &label, SMACK_LABEL_ACCESS); if (rc == 0 && label != NULL) { if (smack_setlabel(src, label, SMACK_LABEL_ACCESS) == -1) { @@ -84,8 +84,9 @@ static void set_syncfile_smack_label(char *src) { free(label); } } else{ - D("fail to set label, is it transmuted?:%s\n", label); + D("fail to set label, is it transmuted?:%s\n", label_transmuted); } + free(label_transmuted); } else { if (smack_setlabel(src, SMACK_SYNC_FILE_LABEL, SMACK_LABEL_ACCESS) == -1) { D("unable to set sync file smack label %s due to %s\n", SMACK_SYNC_FILE_LABEL, strerror(errno));