summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--video/out/vo.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/video/out/vo.c b/video/out/vo.c
index faa172f2fd..7f57df2fe1 100644
--- a/video/out/vo.c
+++ b/video/out/vo.c
@@ -1010,13 +1010,13 @@ static bool render_frame(struct vo *vo)
if (in->dropped_frame) {
MP_STATS(vo, "drop-vo");
} else {
- // If the initial redraw request was true, then we can
- // clear it here since we just performed a redraw and are
- // merely clearing that request. However if there initially is
+ // If the initial redraw request was true or mpv is still playing,
+ // then we can clear it here since we just performed a redraw, or the
+ // next loop will draw what we need. However if there initially is
// no redraw request, then something can change this (i.e. the OSD)
- // while the vo was unlocked. Don't touch in->request_redraw
- // in that case.
- if (request_redraw)
+ // while the vo was unlocked. If we are paused, don't touch
+ // in->request_redraw in that case.
+ if (request_redraw || !in->paused)
in->request_redraw = false;
}