ecore x - go back to vsync thread. this will be more reliable

while it requires an extra wakeup from vsync thread -> e and this adds
a bit of jitter, it's mroe reliable in the face of "missed a frame"
timings and doesnt degrade as badly.
This commit is contained in:
Carsten Haitzler 2020-08-14 10:10:18 +01:00
parent 1ee6e020bb
commit cef058c48b
1 changed files with 2 additions and 1 deletions

View File

@ -154,7 +154,7 @@ static Ecore_Thread *drm_thread = NULL;
static Eina_Spinlock tick_queue_lock;
static int tick_queue_count = 0;
static Eina_Bool tick_skip = EINA_FALSE;
static Eina_Bool threaded_vsync = EINA_FALSE;
static Eina_Bool threaded_vsync = EINA_TRUE;
static Ecore_Timer *fail_timer = NULL;
static Ecore_Timer *fallback_timer = NULL;
@ -907,6 +907,7 @@ ecore_x_vsync_animator_tick_source_set(Ecore_X_Window win)
struct stat st;
if (getenv("ECORE_VSYNC_THREAD")) threaded_vsync = EINA_TRUE;
if (getenv("ECORE_VSYNC_NO_THREAD")) threaded_vsync = EINA_FALSE;
home = eina_environment_home_get();
if (!home) eina_environment_tmp_get();
snprintf(buf, sizeof(buf), "%s/.ecore-no-vsync", home);