To modify an error doesn't happen, if there is no noti_list for key in remove_all... 01/51501/1
authorMyungki Lee <mk5004.lee@samsung.com>
Mon, 9 Nov 2015 02:57:55 +0000 (11:57 +0900)
committerMyungki Lee <mk5004.lee@samsung.com>
Tue, 10 Nov 2015 06:53:10 +0000 (15:53 +0900)
Change-Id: Ib1399c5a96d148ad81d723d42f77219cb609f1f2
Signed-off-by: Myungki Lee <mk5004.lee@samsung.com>
preference/preference.c

index cab3d4f..37b93b2 100644 (file)
@@ -1347,11 +1347,15 @@ API int preference_remove_all(void)
 
                ret = preference_unset_changed_cb(keyname);
                if (ret != PREFERENCE_ERROR_NONE) {
-                       ERR("preference_unset_changed_cb() failed(%d)", ret);
-                       _preference_keynode_free(pKeyNode);
-                       closedir(dir);
-                       free(keyname);
-                       return PREFERENCE_ERROR_IO_ERROR;
+                       if (ret == PREFERENCE_ERROR_NO_KEY) {
+                               ERR("can't find %s's cb()", keyname);
+                       } else {
+                               ERR("preference_unset_changed_cb() failed(%d)", ret);
+                               _preference_keynode_free(pKeyNode);
+                               closedir(dir);
+                               free(keyname);
+                               return PREFERENCE_ERROR_IO_ERROR;
+                       }
                }
 
                do {