After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 531538 - Race between gst_bus_set_flushing and async bus watches
Race between gst_bus_set_flushing and async bus watches
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 0.10.20
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 528531 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2008-05-05 12:10 UTC by Sjoerd Simons
Modified: 2008-05-05 16:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Ignore when popping a NULL message (658 bytes, patch)
2008-05-05 12:11 UTC, Sjoerd Simons
committed Details | Review

Description Sjoerd Simons 2008-05-05 12:10:29 UTC
If a bus is set to flushing between the time that the default mainloop calls _prepare or _check and _dispatch, then the dispatch will fail to pop a buffer. Which causes it to hit a _return_if_fail, which removed the bus watch...
Comment 1 Sjoerd Simons 2008-05-05 12:11:09 UTC
Created attachment 110403 [details] [review]
Ignore when popping a NULL message
Comment 2 Tim-Philipp Müller 2008-05-05 16:42:43 UTC
*** Bug 528531 has been marked as a duplicate of this bug. ***
Comment 3 Tim-Philipp Müller 2008-05-05 16:47:25 UTC
Committed, thanks:

 2008-05-05  Tim-Philipp Müller  <tim.muller at collabora co uk>

        Patch by: Sjoerd Simons <sjoerd at luon net>

        * gst/gstbus.c: (gst_bus_source_dispatch):
          Don't print a warning if the queue is empty when we try to pop
          here. That could happen if another thread or callback set the
          bus to flushing between the source's check/prepare and the
          dispatch being called (#531538).