gstreamer/subprojects/gst-plugins-base/gst-libs/gst
Nirbheek Chauhan ed1bdf9b1a gl: Fix crash in cocoa due to race in gst_gl_context_activate()
We create a new context in `gst_gl_context_create_thread()` and then
activate it on the current thread. Thereafter we assume that the
current thread continues to be the active thread for that context and
call `gst_gl_context_fill_info()` which asserts that the current
thread is the active thread.

However, if at the same time a different thread calls
`send_message_async()`, it will call into
`gst_gl_window_cocoa_send_message_async()` which will schedule the
message to be invoked using GCD. That anonymous function will also
call `gst_gl_context_activate()`, which creates a race, which can lead
to:

```
gst_gl_context_fill_info: assertion 'context->priv->active_thread == g_thread_self ()' failed
```

Fix it by using `gst_gl_context_thread_add()` to invoke `fill_info()`
on the context.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3732>
2023-01-17 21:56:41 +00:00
..
allocators allocators: Add/fix various annotations 2022-10-18 13:51:17 +03:00
app core/base: Only post latency messages if the latency values have actually changed 2022-10-27 15:25:22 +00:00
audio audioenc/dec: Avoid adding temporary structure 2023-01-04 11:09:31 +00:00
fft meson: Namespace the plugins_doc_dep/libraries variables 2022-09-01 21:17:35 +00:00
gl gl: Fix crash in cocoa due to race in gst_gl_context_activate() 2023-01-17 21:56:41 +00:00
pbutils pbutils: Fix vp9 mime mapping when caps when no chroma-site. 2022-11-16 01:29:50 +00:00
riff riff: Mark jpeg as parsed 2022-10-13 13:53:29 -04:00
rtp rtpbasedepayload: Drop redundant reference timestamp buffer meta in RTP depayloaders 2022-11-19 07:57:44 +00:00
rtsp Fix various warnings from gobject-introspection 2022-10-25 09:45:25 +03:00
sdp sdpmessage: Annotate SDP message parameters for parse_uri() and parse_buffer() correctly 2022-11-29 14:02:55 +02:00
tag tag: Add/fix various annotations 2022-10-18 13:51:17 +03:00
video base:navigation: Cleanup navigation key modifiers enum 2022-12-15 16:47:13 +00:00
glib-compat-private.h Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir 2021-09-24 16:13:26 -03:00
meson.build sdp: Handle level-asymmetry-allowed for H264 streams 2021-12-12 10:59:00 -03:00