summaryrefslogtreecommitdiffstats
path: root/player/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/client.c')
-rw-r--r--player/client.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/player/client.c b/player/client.c
index fad3d89a93..be8cbc5d88 100644
--- a/player/client.c
+++ b/player/client.c
@@ -495,6 +495,9 @@ mpv_event *mpv_wait_event(mpv_handle *ctx, double timeout)
{
mpv_event *event = ctx->cur_event;
+ if (timeout < 0)
+ timeout = 1e20;
+
int64_t deadline = mp_add_timeout(mp_time_us(), timeout);
pthread_mutex_lock(&ctx->lock);
@@ -535,7 +538,7 @@ mpv_event *mpv_wait_event(mpv_handle *ctx, double timeout)
}
if (ctx->queued_wakeup)
break;
- if (timeout <= 0)
+ if (timeout == 0)
break;
int r = mpthread_cond_timedwait(&ctx->wakeup, &ctx->lock, deadline);
if (r == ETIMEDOUT)