fix the too many logs when enabled
[platform/core/uifw/libtdm.git] / src / tdm_event_loop.c
index c068c09..29a9763 100644 (file)
@@ -75,7 +75,7 @@ _tdm_event_loop_main_fd_handler(int fd, tdm_event_loop_mask mask, void *user_dat
 
        private_loop = private_display->private_loop;
 
-       if (tdm_debug_thread)
+       if (tdm_debug_module & TDM_DEBUG_THREAD)
                TDM_INFO("backend fd(%d) event happens", private_loop->backend_fd);
 
        func_display = &private_display->func_display;
@@ -149,9 +149,6 @@ tdm_event_loop_deinit(tdm_private_display *private_display)
 
        /* after tdm_thread_deinit, we don't worry about thread things because it's finalized */
        tdm_thread_deinit(private_display->private_loop);
-
-
-       _pthread_mutex_unlock(&private_display->lock);
        tdm_server_deinit(private_display->private_loop);
 
        if (private_display->private_loop->backend_source)
@@ -162,8 +159,6 @@ tdm_event_loop_deinit(tdm_private_display *private_display)
 
        free(private_display->private_loop);
        private_display->private_loop = NULL;
-
-       _pthread_mutex_lock(&private_display->lock);
 }
 
 INTERN void
@@ -230,7 +225,7 @@ tdm_event_loop_dispatch(tdm_private_display *private_display)
 
        TDM_RETURN_VAL_IF_FAIL(private_loop->wl_loop != NULL, TDM_ERROR_OPERATION_FAILED);
 
-       if (tdm_debug_thread)
+       if (tdm_debug_module & TDM_DEBUG_THREAD)
                TDM_INFO("dispatch");
 
        if (tdm_thread_is_running() &&
@@ -384,6 +379,10 @@ _tdm_event_loop_timer_func(void *data)
 
        private_display = timer_source->private_display;
 
+       /* TDM event_loop function is actually for TDM backend module. When we call the
+        * backend's functions, we have to lock the mutex. TDM backend shouldn't consider
+        * mutex things.
+        */
        _pthread_mutex_lock(&private_display->lock);
        timer_source->func(timer_source->user_data);
        _pthread_mutex_unlock(&private_display->lock);