mirror of https://github.com/mpv-player/mpv
x11, wayland: always round up wait times
If wait_us is >0 and <500, the wait time gets rounded down 0, effectively turning this into busy waiting. Round it up instead.
This commit is contained in:
parent
872b7a2654
commit
37d6604d70
|
@ -1139,7 +1139,7 @@ void vo_wayland_wait_events(struct vo *vo, int64_t until_time_us)
|
||||||
};
|
};
|
||||||
|
|
||||||
int64_t wait_us = until_time_us - mp_time_us();
|
int64_t wait_us = until_time_us - mp_time_us();
|
||||||
int timeout_ms = MPCLAMP((wait_us + 500) / 1000, 0, 10000);
|
int timeout_ms = MPCLAMP((wait_us + 999) / 1000, 0, 10000);
|
||||||
|
|
||||||
wl_display_dispatch_pending(dp);
|
wl_display_dispatch_pending(dp);
|
||||||
wl_display_flush(dp);
|
wl_display_flush(dp);
|
||||||
|
|
|
@ -1938,7 +1938,7 @@ void vo_x11_wait_events(struct vo *vo, int64_t until_time_us)
|
||||||
{ .fd = x11->wakeup_pipe[0], .events = POLLIN },
|
{ .fd = x11->wakeup_pipe[0], .events = POLLIN },
|
||||||
};
|
};
|
||||||
int64_t wait_us = until_time_us - mp_time_us();
|
int64_t wait_us = until_time_us - mp_time_us();
|
||||||
int timeout_ms = MPCLAMP((wait_us + 500) / 1000, 0, 10000);
|
int timeout_ms = MPCLAMP((wait_us + 999) / 1000, 0, 10000);
|
||||||
|
|
||||||
poll(fds, 2, timeout_ms);
|
poll(fds, 2, timeout_ms);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue