summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-11-07 15:28:12 +0100
committerwm4 <wm4@nowhere>2014-11-07 15:28:12 +0100
commit01141198be2beaec58928355b59ce5882027866e (patch)
tree0ee4ba73c31466dfe391daced581c99eb195ee0d /video
parent351608e5ccb9314684d10bedf9025b1e872641e9 (diff)
downloadmpv-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.
Diffstat (limited to 'video')
-rw-r--r--video/out/gl_video.c2
-rw-r--r--video/out/vo_opengl.c4
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;