glimagesink: Fix render rect assertion

Whenever the surface is resized before the stream is negotiated, we endup
with an assertion in libgstvideo.

  gst_video_center_rect: assertion 'src->h != 0' failed

This fixes it, by following the style aready in place, which is to ensure
surfaces have a minimum size of 1x1.

Fixes #1139

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4303>
This commit is contained in:
Nicolas Dufresne 2022-11-25 10:01:06 -05:00 committed by Tim-Philipp Müller
parent de5ebc31fc
commit e3fa7c0dda

View file

@ -2268,6 +2268,10 @@ gst_glimage_sink_on_resize (GstGLImageSink * gl_sink, gint width, gint height)
src.h = GST_VIDEO_SINK_HEIGHT (gl_sink);
}
/* The stream may not be negotiated yet */
src.w = MAX (1, src.w);
src.h = MAX (1, src.h);
dst.x = 0;
dst.y = 0;
dst.w = width;