diff options
author | xylosper <darklin20@gmail.com> | 2015-01-08 03:00:26 +0900 |
---|---|---|
committer | Diogo Franco (Kovensky) <diogomfranco@gmail.com> | 2015-01-25 17:00:07 +0900 |
commit | 83d44a4f6afc584ce2c7cfcda964575add7d5fbe (patch) | |
tree | 6449cd63627bb50eecee0d1e586f0511dbe140ae | |
parent | 6609f68691677ac8ef2613a41bd8a21fd01d9cd8 (diff) | |
download | mpv-83d44a4f6afc584ce2c7cfcda964575add7d5fbe.tar.bz2 mpv-83d44a4f6afc584ce2c7cfcda964575add7d5fbe.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().
-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 908442ad3d..1788bcbc99 100644 --- a/video/out/gl_video.c +++ b/video/out/gl_video.c @@ -1520,6 +1520,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) |