summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Isorce <j.isorce@samsung.com>2015-09-17 14:17:09 +0100
committerMatthew Waters <matthew@centricular.com>2015-09-25 20:41:33 +1000
commit04856e6c8a0d51a96bebeb7bc77338b8efc4ed10 (patch)
tree9c81463cf436bcf97e8bb777053005a5cd006b1c
parentbcda593f12a4ccdba14f6c1eb2bdd7cd9877194c (diff)
downloadgstreamer-plugins-bad-04856e6c8a0d51a96bebeb7bc77338b8efc4ed10.tar.gz
glmemory: fix texture leak in _gl_mem_copy
https://bugzilla.gnome.org/show_bug.cgi?id=755456
-rw-r--r--gst-libs/gst/gl/gstglmemory.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gst-libs/gst/gl/gstglmemory.c b/gst-libs/gst/gl/gstglmemory.c
index b1bef1eb0..0a528ec16 100644
--- a/gst-libs/gst/gl/gstglmemory.c
+++ b/gst-libs/gst/gl/gstglmemory.c
@@ -592,7 +592,7 @@ _gl_mem_create (GstGLMemory * gl_mem, GError ** error)
gst_gl_sized_gl_format_from_gl_format_type (context, tex_format,
tex_type);
- if (!gl_mem->tex_id) {
+ if (!gl_mem->texture_wrapped) {
gl_mem->tex_id =
_new_texture (context, gl_mem->tex_target, internal_format, tex_format,
tex_type, gl_mem->tex_width, GL_MEM_HEIGHT (gl_mem));
@@ -1287,12 +1287,12 @@ gst_gl_memory_wrapped_texture (GstGLContext * context,
mem = g_slice_new0 (GstGLMemory);
mem->tex_id = texture_id;
+ mem->texture_wrapped = TRUE;
_gl_mem_init (mem, _gl_allocator, NULL, context, NULL, info, valign, plane,
user_data, notify);
mem->tex_target = texture_target;
- mem->texture_wrapped = TRUE;
mem = (GstGLMemory *) gst_gl_base_buffer_alloc_data ((GstGLBaseBuffer *) mem);
GST_MINI_OBJECT_FLAG_SET (mem, GST_GL_BASE_BUFFER_FLAG_NEED_DOWNLOAD);