Fix a return value of the internal function 78/193378/1
authorHwankyu Jhun <h.jhun@samsung.com>
Tue, 20 Nov 2018 03:17:36 +0000 (12:17 +0900)
committerHwankyu Jhun <h.jhun@samsung.com>
Tue, 20 Nov 2018 03:18:53 +0000 (12:18 +0900)
If the errno is ENOENT, the function returns PREFERENCE_ERROR_NO_KEY.

Change-Id: I1f8b277e526623b5b6f3f307fcb0ba6336b74f4b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/preference.c
src/preference_inoti.c

index 8643cf112b330a6c5ea06e470c9c8c23a4935884..7f84f3057cdc22594d5c8bff700596a8b41a37bd 100644 (file)
@@ -1503,8 +1503,9 @@ API int preference_unset_changed_cb(const char *key)
                return PREFERENCE_ERROR_IO_ERROR;
        }
 
-       if (_preference_kdb_del_notify(pKeyNode)) {
-               if (errno == ENOENT) {
+       func_ret = _preference_kdb_del_notify(pKeyNode);
+       if (func_ret != PREFERENCE_ERROR_NONE) {
+               if (func_ret == PREFERENCE_ERROR_NO_KEY) {
                        LOGE("NO_KEY(0x%08x) : fail to find given key(%s)", PREFERENCE_ERROR_NO_KEY, key);
                        _preference_keynode_free(pKeyNode);
                        return PREFERENCE_ERROR_NO_KEY;
index 77bccdae61895a049f89b6bfa539a6d75a4e7588..c8e10cee3e1f2f02c262c38be0e68d5e56f85d9a 100644 (file)
@@ -377,7 +377,7 @@ int _preference_kdb_del_notify(keynode_t *keynode)
        if (access(path, F_OK) != 0) {
                if (errno == ENOENT) {
                        ERR("_preference_kdb_del_notify : Key(%s) does not exist", keyname);
-                       return PREFERENCE_ERROR_IO_ERROR;
+                       return PREFERENCE_ERROR_NO_KEY;
                }
        }