gstreamer/gst-libs/gst/gl
Matthew Waters a4e49ba8c9 gl: avoid deadlock querying for OpenGL context
If there are two elements and threads attempting to query each other for
an OpenGL context. The locking may result in a deadlock.

We need to unlock each element's context_lock when querying another
element for the OpenGL context in order to allow any other element to
take the lock when the other element is querying for an OpenGL context.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/642>
2020-04-24 18:03:16 +10:00
..
android Remove autotools build system 2019-10-13 14:15:43 +01:00
cocoa glcontext/cocoa: handle sending one message during shutdown 2020-03-26 11:25:44 +00:00
dispmanx remove various useless linefeed in logs 2019-12-11 10:07:12 +01:00
eagl Remove autotools build system 2019-10-13 14:15:43 +01:00
egl gl: add support for P012_LE / P012_BE format 2020-03-24 14:29:38 +08:00
gbm gl/gbm: ensure we call the resize callback before attempting to draw 2019-11-05 07:27:29 +11:00
glprototypes Remove autotools build system 2019-10-13 14:15:43 +01:00
utils gl: Fix compiler warning about unused const variable with gcc 6 2017-12-09 19:32:17 +00:00
viv-fb Remove autotools build system 2019-10-13 14:15:43 +01:00
wayland gl/wayland: Mouse events handling 2020-03-19 09:59:47 +00:00
wgl gl: Decouple win32 window and wgl context 2020-02-18 20:10:03 +09:00
win32 glwindow/win32: Accept both win32 and egl display 2020-02-18 20:11:40 +09:00
winrt gstgl: Add a new window type for WinRT 2019-08-28 02:25:11 +05:30
x11 gl/context/glx: dump GLXFBConfig information to debug logs 2020-03-02 19:36:50 +11:00
gl-prelude.h libs: fix API export/import and 'inconsistent linkage' on MSVC 2018-09-24 08:45:34 +01:00
gl.h gl: New pushsrc-based glbasesrc base class 2019-08-20 09:51:05 +01:00
gstgl_enums.h gl*memory: document new functionality and objects 2017-12-09 19:32:17 +00:00
gstgl_fwd.h gl: New pushsrc-based glbasesrc base class 2019-08-20 09:51:05 +01:00
gstglapi.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglapi.h gl: GstGLAPI should be gst_gl_api_ in lower-case 2018-10-04 14:50:43 +03:00
gstglbasefilter.c gl: avoid deadlock querying for OpenGL context 2020-04-24 18:03:16 +10:00
gstglbasefilter.h glbasefilter: add support for changing the display 2020-03-03 02:11:52 +00:00
gstglbasememory.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglbasememory.h Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglbasesrc.c gl: avoid deadlock querying for OpenGL context 2020-04-24 18:03:16 +10:00
gstglbasesrc.h gl: New pushsrc-based glbasesrc base class 2019-08-20 09:51:05 +01:00
gstglbuffer.c gl: do not include GL headers in public gstgl headers 2017-12-09 19:32:29 +00:00
gstglbuffer.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglbufferpool.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglbufferpool.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglcolorconvert.c gl: add support for Y412_LE / Y412_BE format 2020-04-01 13:55:50 +08:00
gstglcolorconvert.h gl: add support for Y412_LE / Y412_BE format 2020-04-01 13:55:50 +08:00
gstglconfig.h.meson gstgl: Add a new window type for WinRT 2019-08-28 02:25:11 +05:30
gstglcontext.c glcontext: add context is valid precondition to get_thread() 2020-03-26 11:25:44 +00:00
gstglcontext.h gl: GST_EXPORT -> GST_GL_API 2018-03-13 12:10:29 +00:00
gstglcontext_private.h glframebuffer: Don't do expensive checks with low gst debug levels 2019-03-12 03:21:57 +00:00
gstgldebug.c gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstgldebug.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstgldisplay.c libs: gl: Fix a context leak when display_create_context failed 2020-04-08 15:26:23 +08:00
gstgldisplay.h gldisplay: add support removing a context from the internal list 2020-03-03 02:11:52 +00:00
gstglfeature.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglfeature.h gl: GST_EXPORT -> GST_GL_API 2018-03-13 12:10:29 +00:00
gstglfeature_private.h glfeature: move internal functions into a private header 2017-12-09 19:32:23 +00:00
gstglfilter.c glfilter: use gst_object_unref/ref functions 2020-03-04 00:04:18 +00:00
gstglfilter.h libs: Documentation cleanup 2018-04-02 08:53:28 +02:00
gstglformat.c gl: add support for Y412_LE / Y412_BE format 2020-04-01 13:55:50 +08:00
gstglformat.h glimagesink: add support for P010 variants 2019-06-18 16:32:00 +08:00
gstglframebuffer.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglframebuffer.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally 2019-06-04 20:31:09 -04:00
gstglfuncs.h gst-gl: Remove duplicate declarations 2018-11-28 11:59:25 +00:00
gstglmemory.c gl: use gst_video_meta_set_alignment() 2019-11-02 13:05:43 +01:00
gstglmemory.h gl: add support for Y412_LE / Y412_BE format 2020-04-01 13:55:50 +08:00
gstglmemorypbo.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglmemorypbo.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstgloverlaycompositor.c gloverlaycompositor: fix crash if buffer doesn't have video meta 2019-05-14 17:12:06 +00:00
gstgloverlaycompositor.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglpixelformat.c glfilter: rewrite subclasses for filter_texture() occuring on GL thread 2017-12-09 19:32:21 +00:00
gstglquery.c glquery: fix a possible unintialized value 2020-03-02 19:36:50 +11:00
gstglquery.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglrenderbuffer.c gl: do not include GL headers in public gstgl headers 2017-12-09 19:32:29 +00:00
gstglrenderbuffer.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglshader.c remove various useless linefeed in logs 2019-12-11 10:07:12 +01:00
gstglshader.h gl: GST_EXPORT -> GST_GL_API 2018-03-13 12:10:29 +00:00
gstglshaderstrings.c glshader: fix default external-oes shaders 2019-05-07 18:43:49 +10:00
gstglshaderstrings.h gl: try to use highp precision where supported 2019-02-28 17:26:32 +11:00
gstglsl.c build: fix debug output werror build with newer gcc 2019-09-23 17:59:12 +10:00
gstglsl.h Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglsl_private.h gl: do not include GL headers in public gstgl headers 2017-12-09 19:32:29 +00:00
gstglslstage.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglslstage.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglsyncmeta.c gl: do not include GL headers in public gstgl headers 2017-12-09 19:32:29 +00:00
gstglsyncmeta.h gl: GST_EXPORT -> GST_GL_API 2018-03-13 12:10:29 +00:00
gstglupload.c glupload: fix segfault 2020-03-26 14:06:13 +08:00
gstglupload.h Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglutils.c Pass the code through codespell 2019-08-30 13:05:36 +00:00
gstglutils.h gl: GST_EXPORT -> GST_GL_API 2018-03-13 12:10:29 +00:00
gstglutils_private.h glutils: fix matrix operations everywhere 2017-12-09 19:32:30 +00:00
gstglviewconvert.c glviewconvert: fix reset context for GL context change 2020-02-05 15:32:14 +11:00
gstglviewconvert.h gl/docs: add to new docs system 2019-05-21 01:49:48 +00:00
gstglwindow.c glwindow: remove unused private alive variable 2020-03-26 11:25:44 +00:00
gstglwindow.h gl/navigation: Scroll events dispatch support 2020-03-19 09:59:47 +00:00
gstglwindow_private.h gl: add missing new header files 2017-12-09 19:32:29 +00:00
meson.build meson: add window system egl 2020-03-12 10:00:59 +00:00