From c7673f1cd6bad19d3292896eea4ad485710926c5 Mon Sep 17 00:00:00 2001 From: Gwenole Beauchesne Date: Wed, 11 Dec 2013 10:51:03 +0100 Subject: [PATCH] plugins: robustify GstVideoGLTextureUploadMeta implementation. Make GstVideoGLTextureUploadMeta::upload() implementation more robust when the GstVaapiTexture associated with the supplied texture id could not be created. --- gst/vaapi/gstvaapivideometa_texture.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gst/vaapi/gstvaapivideometa_texture.c b/gst/vaapi/gstvaapivideometa_texture.c index 10c3b9a..593950a 100644 --- a/gst/vaapi/gstvaapivideometa_texture.c +++ b/gst/vaapi/gstvaapivideometa_texture.c @@ -55,14 +55,18 @@ gst_vaapi_texture_upload(GstVideoGLTextureUploadMeta *meta, guint texture_id[4]) if (texture) { GstVaapiDisplay * const tex_dpy = gst_vaapi_object_get_display(GST_VAAPI_OBJECT(texture)); - if (tex_dpy != dpy) + if (tex_dpy != dpy) { gst_vaapi_texture_replace(&texture, NULL); + meta->user_data = NULL; + } } if (!texture) { /* FIXME: should we assume target? */ texture = gst_vaapi_texture_new_with_texture(dpy, texture_id[0], GL_TEXTURE_2D, GL_RGBA); + if (!texture) + return FALSE; meta->user_data = texture; } -- 2.7.4