storage-external: Fix bug callback is triggered wrongly 81/304281/1 tizen_8.0
authorUnsung Lee <unsung.lee@samsung.com>
Sun, 14 Jan 2024 11:05:21 +0000 (20:05 +0900)
committerUnsung Lee <unsung.lee@samsung.com>
Mon, 15 Jan 2024 09:23:05 +0000 (18:23 +0900)
Fix a bug callback is triggered wrongly when different storage's state is changed.

Change-Id: Ia929a9d4cc7eee7990f79b73a8fe42cd7fca939b
Signed-off-by: Unsung Lee <unsung.lee@samsung.com>
src/storage-external.c

index 65719d4..4406e4c 100755 (executable)
@@ -191,8 +191,12 @@ static int storage_ext_id_changed(storage_ext_device *dev, enum storage_ext_stat
                return ret;
        }
 
-       SYS_G_LIST_FOREACH(cb_list[STORAGE_CALLBACK_ID], elem, cb_info)
+       SYS_G_LIST_FOREACH(cb_list[STORAGE_CALLBACK_ID], elem, cb_info) {
+               if (dev->storage_id != cb_info->id)
+                       continue;
+
                cb_info->state_cb(cb_info->id, state, cb_info->user_data);
+       }
 
        return 0;
 }