for (idx = 0; idx < handle->resources->len; idx++) {
resource = (mm_resource_manager_res_s*)handle->resources->pdata[idx];
if (resource->type == type && resource->volume == volume) {
+ /* FIXME : Set true in advance release callback invoking to prevent deadlock with resource marking */
+ handle->release_cb.is_invoked = TRUE;
+
MM_RM_INFO("[res %p type %s volume %d] release_cb", resource, _mm_resource_manager_get_res_str(type), volume);
release_all = ((mm_resource_manager_release_cb)handle->release_cb.cb)(handle, resource, handle->release_cb.user_data);
MM_RM_INFO("[%d] release_cb is completed", release_all);
- handle->release_cb.is_invoked = TRUE;
__send_release_cb_sync(handle->id);