GNOME Bugzilla – Bug 782214
glutils: fix incompatible type issue for set texture target
Last modified: 2017-05-08 02:28:16 UTC
GstGLTextureTarget is enum. Different compile has different define for enum. It is 32 bits on our platform. But below function use 64 bits parameter. It will cause invalid memory access. gst_gl_value_set_texture_target (value, _gst_gl_log2_int64 (target_mask));
Created attachment 351188 [details] [review] glutils: fix incompatible type issue for set texture target
How does that produce invalid memory access? What exactly are you trying to solve?
we met invalid memory ptr issue with glimagesink plugin. Here is potential issue as the function parameter have incompatible type. _gst_gl_log2_int64() return guint64 while gst_gl_value_set_texture_target() need GstGLTextureTarget which is 32 bits enum.
The issue will occur when loop playback one 10 seconds stream for 20 hours. The issue is munmap_chunk fail with invalid memory ptr when unref(caps) in glupload stansfer_caps().
And does this fix the issue? I would be very surprised if it does.
I am verifying it. Will update you next Monday.