[Bug 742684] audiomixer: Un-even locking in GstAggregator causes the tests to fail

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri Jan 23 06:47:56 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=742684
  GStreamer | gst-plugins-bad | git master

Thibault Saunier <tsaunier> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #295222|none                        |reviewed
             status|                            |

--- Comment #28 from Thibault Saunier <tsaunier at gnome.org> 2015-01-23 14:47:53 UTC ---
Review of attachment 295222:
 --> (https://bugzilla.gnome.org/review?bug=742684&attachment=295222)

::: gst-libs/gst/base/gstaggregator.c
@@ -700,2 @@
   gst_pad_stop_task (self->srcpad);
-  SRC_STREAM_BROADCAST (self);

Why do you remove the broadcasting here??

@@ +847,3 @@
        * called
        */
+      SRC_STREAM_LOCK (self);

Why do you take the lock so early? I can't see any data you protect between
that line and the broadcasting.

@@ +994,3 @@
   GST_INFO_OBJECT (pad, "Removing pad");

+  SRC_STREAM_LOCK (self);

Why do you take the lock so early? I can't see any data you protect between
that line and the broadcasting.

@@ +1763,3 @@
   }

+  SRC_STREAM_LOCK (self);

Why did you move it here?

@@ +1885,2 @@
     PAD_LOCK_EVENT (aggpad);
+    g_atomic_int_set (&aggpad->priv->flushing, FALSE);

Why did you move that here? ->flushing is not protected by the event lock.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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