return ECORE_CALLBACK_CANCEL;
}
-static void *
-remix_player_timer_add(void *data)
-{
- RemixPlayerData *player_data = data;
-
- if (player_data->timeout) ecore_timer_del(player_data->timeout);
- player_data->timeout = ecore_timer_add(TIMEOUT_FOR_MM_HANDLER,
- _remix_mm_handle_close, player_data);
-
- return NULL;
-}
-
static int
remix_player_flush (RemixEnv *env, RemixBase *base)
{
if (!player_data) return;
- //ecore timer is not thread safe, must be called in main thread
- //the below call should not be blocking
- ecore_main_loop_thread_safe_call_async
- (remix_player_timer_add, player_data);
+ if (player_data->timeout) ecore_timer_del(player_data->timeout);
+ player_data->timeout = ecore_timer_add(TIMEOUT_FOR_MM_HANDLER,
+ _remix_mm_handle_close, player_data);
if (player_data->handle) return 0;