From e75176390aba2c55c218e2b12037393a3babf805 Mon Sep 17 00:00:00 2001 From: "pr.jung" Date: Wed, 20 Sep 2017 11:49:40 +0900 Subject: [PATCH] DD_LIST_FOREACH_SAFE should be used when there is node remove operation from list. Change-Id: I807635a8959bdc66a26f7b6544e01c56a0bcbdd5 Signed-off-by: pr.jung --- src/storage-external-dbus.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/storage-external-dbus.c b/src/storage-external-dbus.c index be20d3f..dcd1e9e 100755 --- a/src/storage-external-dbus.c +++ b/src/storage-external-dbus.c @@ -367,6 +367,7 @@ void storage_ext_unregister_device_change(storage_ext_changed_cb func) GDBusConnection *conn; struct storage_ext_callback *callback; dd_list *elem; + dd_list *elem_n; if (!func) return; @@ -379,7 +380,7 @@ void storage_ext_unregister_device_change(storage_ext_changed_cb func) //LCOV_EXCL_STOP } - DD_LIST_FOREACH(changed_list, elem, callback) { + DD_LIST_FOREACH_SAFE(changed_list, elem, elem_n, callback) { if (callback->func != func) continue; if (callback->block_id > 0) -- 2.7.4