GNOME Bugzilla – Bug 755612
gtk: Add property to create a window and only dispatch to main thread if that is set
Last modified: 2018-11-03 15:04:43 UTC
See summary. Dispatching to the main thread and blocking, especially during state changes, can easily cause deadlocks. Currently we only do that because of the window that is created by the sinks if the user did not embed the widget anywhere. No normal application needs this but all applications now have to live in fear of deadlocks.
The other case for needing the dispatch to main thread is for getting the GL context/display from Gtk so it's not just the 'create own window' case.
That's done in get_widget(), right? Any sane application will get the widget from the sink in its main thread, and before changing the state of anything :)
Currently no. You don't need the GL context to get the widget ;) Function trace is as follows change_state (NULL_to_READY) gtk_gst_gl_sink_start() gtk_gst_gl_widget_init_winsys() <dspatch to main context> _get_gl_context()
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/226.