From 83476433b5e98282af170b0be59ed897ea6aedab Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 25 Mar 2015 13:58:14 +0100 Subject: video: make frame skipping code slightly more readable --- player/video.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) (limited to 'player/video.c') diff --git a/player/video.c b/player/video.c index a1cd0ca368..7e50c84513 100644 --- a/player/video.c +++ b/player/video.c @@ -639,24 +639,19 @@ static int video_output_image(struct MPContext *mpctx, double endpts) // Always add these; they make backstepping after seeking faster. add_frame_pts(mpctx, img->pts); - bool drop = false; - if ((endpts != MP_NOPTS_VALUE && img->pts >= endpts) || - mpctx->max_frames == 0) - { - drop = true; + if (endpts != MP_NOPTS_VALUE && img->pts >= endpts) { r = VD_EOF; - } - if (!drop && hrseek && mpctx->hrseek_lastframe) { + } else if (mpctx->max_frames == 0) { + r = VD_EOF; + } else if (hrseek && mpctx->hrseek_lastframe) { mp_image_setrefp(&mpctx->saved_frame, img); - drop = true; - } - if (hrseek && img->pts < mpctx->hrseek_pts - .005) - drop = true; - if (drop) { - talloc_free(img); + } else if (hrseek && img->pts < mpctx->hrseek_pts - .005) { + /* just skip */ } else { add_new_frame(mpctx, img); + img = NULL; } + talloc_free(img); } } -- cgit v1.2.3