diff options
author | xylosper <darklin20@gmail.com> | 2015-01-08 03:00:26 +0900 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2015-01-07 19:22:54 +0100 |
commit | 21000774bf3fc68b65b0caad079aa908872940bb (patch) | |
tree | ee589ba68c2c623d76a75a8bedc3efd178a6e999 /video | |
parent | f811348d0caabccdc72100c7d7d2f9df8332518a (diff) | |
download | mpv-21000774bf3fc68b65b0caad079aa908872940bb.tar.bz2 mpv-21000774bf3fc68b65b0caad079aa908872940bb.tar.xz |
gl_video.c: invalidate image_params in uninit_video()
When the given mp_image_params does not match with that of gl_video,
gl_video_config() always calls uninit_video() but calls init_video()
only if valid format is given.
Since uninit_video() does not change image_params of gl_video,
when the same params as the previous one is given to gl_video_config()
after gl_video is unitialized with invalid format, gl_video_config()
never calls init_video().
To prevent this, invalidate image_params of gl_video in uninit_video().
Diffstat (limited to 'video')
-rw-r--r-- | video/out/gl_video.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/video/out/gl_video.c b/video/out/gl_video.c index af9e759f40..5b3fe7b34d 100644 --- a/video/out/gl_video.c +++ b/video/out/gl_video.c @@ -1640,6 +1640,10 @@ static void uninit_video(struct gl_video *p) fbotex_uninit(p, &p->indirect_fbo); fbotex_uninit(p, &p->scale_sep_fbo); + + // Invalidate image_params to ensure that gl_video_config() will call + // init_video() on uninitialized gl_video. + p->image_params = (struct mp_image_params){0}; } static void change_dither_trafo(struct gl_video *p) |