Since find_client_by_id() walks g_pass_resource_monitor_client_head
list which is prevented by critical section, it should be mutually
exclusive, thus mutex lock/unlock is added to former/later of loop.
Change-Id: I6ea2dad42ff9dd08dec331db7ea4c9de550da618
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
struct pass_resource_monitor_client *client;
GList *node;
+ g_mutex_lock(&g_mutex);
for (node = g_pass_resource_monitor_client_head;
node != NULL;
node = node->next) {
client = node->data;
- if (client->id == id)
+ if (client->id == id) {
+ g_mutex_unlock(&g_mutex);
return client;
+ }
}
+ g_mutex_unlock(&g_mutex);
return NULL;
}