diff options
author | wm4 <wm4@nowhere> | 2014-11-07 15:28:12 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-11-07 15:28:12 +0100 |
commit | 01141198be2beaec58928355b59ce5882027866e (patch) | |
tree | 0ee4ba73c31466dfe391daced581c99eb195ee0d | |
parent | 351608e5ccb9314684d10bedf9025b1e872641e9 (diff) | |
download | mpv-01141198be2beaec58928355b59ce5882027866e.tar.bz2 mpv-01141198be2beaec58928355b59ce5882027866e.tar.xz |
vo_opengl: initialize renderer after setting size
This silences the warning:
video/out/gl_video.c:1091:51: runtime error: division by zero
when running with clang -fsanitize=undefined. Division by zero is legal
according to IEEE, but I guess clang doesn't care about standard. While
triggering this warning isn't actually avoided in all cases, it's
avoided in the common case and also makes people shut up about it.
-rw-r--r-- | video/out/gl_video.c | 2 | ||||
-rw-r--r-- | video/out/vo_opengl.c | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/video/out/gl_video.c b/video/out/gl_video.c index 97463b8adf..a0f23e9157 100644 --- a/video/out/gl_video.c +++ b/video/out/gl_video.c @@ -2324,6 +2324,8 @@ void gl_video_config(struct gl_video *p, struct mp_image_params *params) uninit_video(p); init_video(p, params); } + + check_resize(p); } void gl_video_set_output_depth(struct gl_video *p, int r, int g, int b) diff --git a/video/out/vo_opengl.c b/video/out/vo_opengl.c index 4e1b1a53ea..0c35ca3ee0 100644 --- a/video/out/vo_opengl.c +++ b/video/out/vo_opengl.c @@ -225,12 +225,12 @@ static int reconfig(struct vo *vo, struct mp_image_params *params, int flags) p->glctx->register_resize_callback(vo, video_resize_redraw_callback); } + resize(p); + gl_video_config(p->renderer, params); p->vo_flipped = !!(flags & VOFLAG_FLIPPING); - resize(p); - mpgl_unlock(p->glctx); return 0; |