while (tmp_list) {
export_data = (muse_recorder_export_data *)tmp_list->data;
- if (export_data) {
- if (export_data->fd == fd || remove_all) {
- /*LOGD("fd %d matched, remove it (remove_all %d)", fd, remove_all);*/
-
- if (export_data->bo) {
- tbm_bo_unref(export_data->bo);
- export_data->bo = NULL;
- } else {
- LOGW("bo for fd %d is NULL", fd);
- }
-
- /* close exported fd */
- close(export_data->fd);
- export_data->fd = -1;
-
- muse_recorder->data_list = g_list_remove(muse_recorder->data_list, export_data);
-
- g_free(export_data);
- export_data = NULL;
-
- if (remove_all == FALSE) {
- /*LOGD("fd %d, remove done", fd);*/
- g_mutex_unlock(&muse_recorder->list_lock);
- return TRUE;
- } else {
- LOGD("check next data");
- }
- }
- } else {
+
+ tmp_list = tmp_list->next;
+
+ if (export_data == NULL) {
LOGW("NULL data");
+ continue;
}
- tmp_list = tmp_list->next;
+ if (export_data->fd != fd && remove_all == FALSE)
+ continue;
+
+ /*LOGD("fd %d matched, remove it (remove_all %d)", fd, remove_all);*/
+
+ if (export_data->bo) {
+ tbm_bo_unref(export_data->bo);
+ export_data->bo = NULL;
+ } else {
+ LOGW("bo for fd %d is NULL", fd);
+ }
+
+ /* close exported fd */
+ close(export_data->fd);
+ export_data->fd = -1;
+
+ muse_recorder->data_list = g_list_remove(muse_recorder->data_list, export_data);
+
+ g_free(export_data);
+ export_data = NULL;
+
+ if (remove_all == FALSE) {
+ /*LOGD("fd %d, remove done", fd);*/
+ g_mutex_unlock(&muse_recorder->list_lock);
+ return TRUE;
+ } else {
+ LOGD("check next data");
+ }
}
g_mutex_unlock(&muse_recorder->list_lock);