Fix memory leak 39/228439/2
authorhyunho <hhstark.kang@samsung.com>
Mon, 23 Mar 2020 06:11:10 +0000 (15:11 +0900)
committerhyunho <hhstark.kang@samsung.com>
Mon, 23 Mar 2020 06:46:34 +0000 (15:46 +0900)
Change-Id: Ibb9ef5f16c5349ec02b414ce00ccb7b68ba35faf
Signed-off-by: hyunho <hhstark.kang@samsung.com>
ambient-viewer/src/ambient-viewer.cc
watch-holder/src/watch_mirror.cc
widget_viewer_sdk/src/main.c

index b4dd4b4..2bf57d7 100644 (file)
@@ -62,8 +62,12 @@ string AmbientViewer::GetUUID(string rid) const {
 void AmbientViewer::OnChangedSignal(keynode_t *node, void *user_data) {
   AmbientViewer* viewer = (AmbientViewer*)user_data;
   const char* raw = vconf_get_str(VCONFKEY_WATCH_CURRENT_WATCH_INFO);
-  if (raw == nullptr || strlen(raw) == 0)
+  if (raw == nullptr || strlen(raw) == 0) {
+    if (raw != nullptr)
+      free((void*)raw);
     return;
+  }
+
   try {
     Bundle data(raw);
     string appid = data.GetString(NOTIFY_CHANGED_EVENT_APPID_KEY);
index 24f19ee..3ef8218 100644 (file)
@@ -48,8 +48,12 @@ string WatchMirror::GetUUID(string rid) const {
 void WatchMirror::OnChangedSignal(keynode_t *node, void *user_data) {
   WatchMirror* mirror = (WatchMirror*)user_data;
   const char* raw = vconf_get_str(VCONFKEY_WATCH_CURRENT_WATCH_INFO);
-  if (raw == nullptr || strlen(raw) == 0)
+  if (raw == nullptr || strlen(raw) == 0) {
+    if (raw != nullptr)
+      free((void*)raw);
     return;
+  }
+
   string raw_str(raw);
   free((void*)raw);
   try {
index 318d7a5..6d1ddac 100644 (file)
@@ -773,12 +773,16 @@ static void __watch_launched_cb(watch_h watch, void *data) {
        char* appid = NULL;
        watch_get_appid(watch, &appid);
        DbgPrint("watch(%s) launched", appid);
+       if (appid)
+               free(appid);
 }
 
 static void __watch_dead_cb(watch_h watch, bool is_faulted, void *data) {
        char* appid = NULL;
        watch_get_appid(watch, &appid);
        DbgPrint("watch(%s) dead (%d)", appid, is_faulted);
+       if (appid)
+               free(appid);
 }
 
 static void __watch_added_cb(watch_h watch, void *data) {
@@ -791,7 +795,7 @@ static void __watch_added_cb(watch_h watch, void *data) {
        watch_get_appid(watch, &appid);
        DbgPrint("watch added : %s", appid);
        if (appid)
-         free(appid);
+               free(appid);
 
        int ret = watch_get_current_image(watch, &__clock);
        if (ret == WATCH_HOLDER_ERROR_NONE) {