ret = func_display->display_get_fd(private_display->bdata, &fd);
if (fd < 0) {
- TDM_WRN("TDM backend module returns fd(%d)", fd);
+ TDM_ERR("TDM backend module returns fd(%d)", fd);
return;
}
if (tdm_debug_thread)
TDM_INFO("dispatch");
+ if (tdm_thread_is_running() &&
+ tdm_thread_in_display_thread(syscall(SYS_gettid))) {
+ TDM_NEVER_GET_HERE();
+ return TDM_ERROR_OPERATION_FAILED;
+ }
+
/* Don't set timeout to -1. It can make deadblock by two mutex locks.
* If need to set -1, use poll() and call tdm_event_loop_dispatch() after
* escaping polling.
if (wl_event_loop_dispatch(private_loop->wl_loop, 0) < 0)
TDM_ERR("dispatch failed");
+ wl_display_flush_clients(private_loop->wl_display);
+
return TDM_ERROR_NONE;
}
TDM_RETURN_IF_FAIL(private_loop->wl_display != NULL);
+ if (tdm_thread_is_running() &&
+ tdm_thread_in_display_thread(syscall(SYS_gettid))) {
+ TDM_NEVER_GET_HERE();
+ return;
+ }
+
wl_display_flush_clients(private_loop->wl_display);
}
}
EXTERN tdm_error
-tdm_event_loop_source_timer_update(tdm_event_loop_source *source, int ms_delay)
+tdm_event_loop_source_timer_update(tdm_event_loop_source *source, unsigned int ms_delay)
{
tdm_event_loop_source_timer *timer_source = source;