change input param's type
[platform/core/uifw/libtdm.git] / src / tdm_event_loop.c
index 1cfaad2..d1eb6ea 100644 (file)
@@ -230,6 +230,12 @@ tdm_event_loop_dispatch(tdm_private_display *private_display)
        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.
@@ -237,6 +243,8 @@ tdm_event_loop_dispatch(tdm_private_display *private_display)
        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;
 }
 
@@ -250,6 +258,12 @@ tdm_event_loop_flush(tdm_private_display *private_display)
 
        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);
 }
 
@@ -416,7 +430,7 @@ tdm_event_loop_add_timer_handler(tdm_display *dpy, tdm_event_loop_timer_handler
 }
 
 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;