if (!export_data)
return;
- CAM_LOG_DEBUG("export data[%p], bo[%p/%p], bo_fd[%d/%d], buffer_fd[%d/%d/%d], gstbuffer[%p]",
- export_data, export_data->bo, export_data->data_bo, export_data->fd, export_data->data_fd,
- export_data->buffer_fd[0], export_data->buffer_fd[1], export_data->buffer_fd[2],
- export_data->internal_buffer);
+ CAM_LOG_INFO("export_data[%p], bo[%p], fd[%d]",
+ export_data, export_data->bo, export_data->fd);
/* unref bo */
if (export_data->bo) {
export_data->fd = -1;
}
+ CAM_LOG_INFO("data_bo[%p], data_fd[%d], buffer_fd[%d/%d/%d]",
+ export_data->data_bo, export_data->data_fd,
+ export_data->buffer_fd[0], export_data->buffer_fd[1], export_data->buffer_fd[2]);
+
/* unref exported data_bo */
if (export_data->data_bo) {
tbm_bo_unref(export_data->data_bo);
}
}
+ CAM_LOG_INFO("internal_buffer[%p]", export_data->internal_buffer);
+
/* unref GstBuffer */
if (export_data->internal_buffer) {
gst_buffer_unref((GstBuffer *)export_data->internal_buffer);
}
g_free(export_data);
+
+ CAM_LOG_INFO("done");
}
camera_return_val_if_fail(camera_data, FALSE);
camera_return_val_if_fail(fd >= -1, FALSE); /* -1 means "Remove all". */
+ CAM_LOG_INFO("fd[%d]", fd);
+
g_mutex_lock(&camera_data->lock);
if (fd == -1) {
g_mutex_unlock(&camera_data->lock);
+ CAM_LOG_INFO("done");
+
return TRUE;
}
void _camera_dispatcher_interrupted_cb(camera_policy_e policy, camera_state_e previous, camera_state_e current, void *user_data)
{
muse_module_h module = (muse_module_h)user_data;
+ muse_camera_handle_s *muse_camera = NULL;
+
+ muse_camera = (muse_camera_handle_s *)muse_server_ipc_get_handle(module);
+ if (muse_camera) {
+ CAM_LOG_WARNING("set interrupt flag");
+ muse_camera->is_interrupted = TRUE;
+ }
CAM_LOG_INFO("Enter - policy[%d], state previous[%d] -> current[%d]", policy, previous, current);
snprintf(value_key, KEY_LENGTH, "flash_state_camera%d", device_type);
muse_server_module_set_value(muse_camera->module, value_key, 0);
}
+
+ /* reset interrupt flag */
+ muse_camera->is_interrupted = FALSE;
}
break;
case MUSE_CAMERA_API_START_CAPTURE:
muse_camera_msg_get(ret_fd, muse_server_module_get_msg(module));
- CAM_LOG_VERBOSE("ret_fd[%d]", ret_fd);
+ if (muse_camera->is_interrupted) {
+ CAM_LOG_WARNING("Interrupted... skip it[ret_fd:%d]", ret_fd);
+ return MUSE_CAMERA_ERROR_NONE;
+ }
if (!camera_remove_export_data(&muse_camera->camera_data, (tbm_fd)ret_fd))
CAM_LOG_ERROR("remove export data failed : fd[%d]", ret_fd);
if (stream->internal_buffer)
export_data->internal_buffer = gst_buffer_ref((GstBuffer *)stream->internal_buffer);
- CAM_LOG_DEBUG("bo[%p/%p], bo_fd[%d/%d], buffer_fd[%d/%d/%d]",
+ CAM_LOG_INFO("bo[%p/%p], bo_fd[%d/%d], buffer_fd[%d/%d/%d]",
export_data->bo, export_data->data_bo, export_data->fd, export_data->data_fd,
export_data->buffer_fd[0], export_data->buffer_fd[1], export_data->buffer_fd[2]);