[Bug 752379] New: gl: deadlock when destroying GstGLContext from within a windows event callback

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Jul 14 08:47:27 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=752379

            Bug ID: 752379
           Summary: gl: deadlock when destroying GstGLContext from within
                    a windows event callback
    Classification: Platform
           Product: GStreamer
           Version: unspecified
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: xclaesse at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

I'm writing an application on windows, it uses glimagesink inside a WinForm.
That window has a stop button, when clicked I set pipeline to NULL state. Doing
that means that from within a window event callback, the GstGLContext is
finalized and blocks until the glcontext thread returns. This leads to
DestroyWindow() call to destroy the internal window on which glimagesink is
drawing video frames. That DestroyWindow() call never returns, because the
thread handling window event is still blocked in gst_gl_context_finalize().

To workaround this issue, I had to spawn a new thread in the callback of the
stop button, and set pipeline to NULL in that thread instead.

I don't know what would be a proper fix.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list