PLAYER_INSTANCE_CHECK(player);
player_s *handle = (player_s *)player;
+ /* Initialize the setting regardless of error return */
+ if (handle->user_cb[MUSE_PLAYER_EVENT_TYPE_SEEK]) {
+ handle->user_cb[MUSE_PLAYER_EVENT_TYPE_SEEK] = NULL;
+ handle->user_data[MUSE_PLAYER_EVENT_TYPE_SEEK] = NULL;
+ }
+
+ if (handle->user_cb[MUSE_PLAYER_EVENT_TYPE_PREPARE]) {
+ handle->user_cb[MUSE_PLAYER_EVENT_TYPE_PREPARE] = NULL;
+ handle->user_data[MUSE_PLAYER_EVENT_TYPE_PREPARE] = NULL;
+ }
+
if (!__player_state_validate(handle, PLAYER_STATE_READY)) {
LOGE("[%s] PLAYER_ERROR_INVALID_STATE(0x%08x) : current state - %d", __FUNCTION__, PLAYER_ERROR_INVALID_STATE, handle->state);
return PLAYER_ERROR_INVALID_STATE;
if (ret != MM_ERROR_NONE) {
return __player_convert_error_code(ret, (char *)__FUNCTION__);
} else {
- if (handle->user_cb[MUSE_PLAYER_EVENT_TYPE_SEEK]) {
- handle->user_cb[MUSE_PLAYER_EVENT_TYPE_SEEK] = NULL;
- handle->user_data[MUSE_PLAYER_EVENT_TYPE_SEEK] = NULL;
- }
-
- if (handle->user_cb[MUSE_PLAYER_EVENT_TYPE_PREPARE]) {
- handle->user_cb[MUSE_PLAYER_EVENT_TYPE_PREPARE] = NULL;
- handle->user_data[MUSE_PLAYER_EVENT_TYPE_PREPARE] = NULL;
- }
-
handle->state = PLAYER_STATE_IDLE;
handle->display_type = PLAYER_DISPLAY_TYPE_NONE;
- handle->is_set_pixmap_cb = FALSE;
handle->is_stopped = FALSE;
handle->is_display_visible = TRUE;
handle->is_progressive_download = FALSE;
player_s *handle = (player_s *)player;
void *set_handle = NULL;
MMDisplaySurfaceType mmType = __player_convert_display_type(type);
-
int ret;
+ void *temp = NULL;
+
if (!__player_state_validate(handle, PLAYER_STATE_IDLE)) {
LOGE("[%s] PLAYER_ERROR_INVALID_STATE(0x%08x) : current state - %d", __FUNCTION__, PLAYER_ERROR_INVALID_STATE, handle->state);
return PLAYER_ERROR_INVALID_STATE;
}
- if (handle->is_set_pixmap_cb) {
- if (handle->state < PLAYER_STATE_READY) {
- /* just set below and go to "changing surface case" */
- handle->is_set_pixmap_cb = FALSE;
- } else {
- LOGE("[%s] pixmap callback was set, try it again after calling legacy_player_unprepare()", __FUNCTION__, PLAYER_ERROR_INVALID_OPERATION);
- LOGE("[%s] PLAYER_ERROR_INVALID_OPERATION(0x%08x)", __FUNCTION__, PLAYER_ERROR_INVALID_OPERATION);
- return PLAYER_ERROR_INVALID_OPERATION;
- }
- }
- void *temp = NULL;
if (type == PLAYER_DISPLAY_TYPE_NONE) {
/* NULL surface */
handle->display_handle = 0;