From 0b082b2086d69019edf116bb162a46d3932aefcb Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 12 Jun 2016 12:52:35 +0200 Subject: player: fix previous commit Of course we can't just skip updating the OSD if the playloop was woken up for the purpose of removing OSD after an OSD timer expired. Fixes e.g. OSD bars sometimes sticking along when seeking while paused. --- player/osd.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/player/osd.c b/player/osd.c index de84421d93..69b8dbb8b1 100644 --- a/player/osd.c +++ b/player/osd.c @@ -511,6 +511,7 @@ void update_osd_msg(struct MPContext *mpctx) double sleep = mpctx->osd_visible - now; if (sleep > 0) { mpctx->sleeptime = MPMIN(mpctx->sleeptime, sleep); + mpctx->osd_idle_update = true; } else { mpctx->osd_visible = 0; mpctx->osd_progbar.type = -1; // disable @@ -522,6 +523,7 @@ void update_osd_msg(struct MPContext *mpctx) double sleep = mpctx->osd_function_visible - now; if (sleep > 0) { mpctx->sleeptime = MPMIN(mpctx->sleeptime, sleep); + mpctx->osd_idle_update = true; } else { mpctx->osd_function_visible = 0; mpctx->osd_function = 0; @@ -539,6 +541,7 @@ void update_osd_msg(struct MPContext *mpctx) double sleep = mpctx->osd_msg_visible - now; if (sleep > 0) { mpctx->sleeptime = MPMIN(mpctx->sleeptime, sleep); + mpctx->osd_idle_update = true; } else { talloc_free(mpctx->osd_msg_text); mpctx->osd_msg_text = NULL; -- cgit v1.2.3