gl/cocoa: Return a strong ref to the parent GstGLContext
authorJan Schmidt <jan@centricular.com>
Thu, 2 Feb 2023 12:20:04 +0000 (23:20 +1100)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 2 Feb 2023 18:20:42 +0000 (18:20 +0000)
If the GstGLCAOpenGLLayer was initialized via a parent
context, make sure to ref the context before returning it
from getGLContext as all callers will unref it.

Follow up to !3729

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3885>

subprojects/gst-plugins-base/gst-libs/gst/gl/cocoa/gstglcaopengllayer.m

index 1498a54..e4ce6eb 100644 (file)
@@ -65,7 +65,7 @@ _init_debug (void)
   GstGLWindow *gst_gl_window;
   GstGLContext *gst_gl_context = NULL;
   if (gst_gl_context_ref)
-    return gst_gl_context_ref;
+    return gst_object_ref(gst_gl_context_ref);
   gst_gl_window = g_weak_ref_get (&self->gst_gl_window_ref);
   if (gst_gl_window) {
     gst_gl_context = gst_gl_window_get_context (gst_gl_window);