[Bug 758984] New: gl/wayland: fix loop test hang in glimagesink
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Wed Dec 2 21:55:08 PST 2015
https://bugzilla.gnome.org/show_bug.cgi?id=758984
Bug ID: 758984
Summary: gl/wayland: fix loop test hang in glimagesink
Classification: Platform
Product: GStreamer
Version: 1.6.0
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: gst-plugins-bad
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: b55597 at freescale.com
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 316692
--> https://bugzilla.gnome.org/attachment.cgi?id=316692&action=edit
gl/wayland: fix loop test hang in glimagesink
gl/wayland: fix loop test hang in glimagesink
Don't call gst_gl_wl_display_roundtrip_queue() in window_show(). In
glimagesink, gl thread will dispatch event queue and window_show() is called
from streaming thread. Gl thread will empty event queue and potentially cause
gst_gl_wl_display_roundtrip_queue() blocking the streaming thread to wait for
an event occur. Actually, no event can occur because the swap_buffer event is
queued by streaming thread but it is blocked.
And also we should destroy event queue when destroy surfaces.
This patch remove gst_gl_window_wayland_egl_show() from
GstGLWindowWaylandEGLClass and call create_surfaces()
gst_gl_wl_display_roundtrip_queue() in gst_gl_window_wayland_egl_open(). When
when destroy surfaces, destroy event queue also.
please help me review. Thanks.
--
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