[Bug 764744] Crashes when multiple udpsrc are created for each client on a shared media, misses tracking and cleanup

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Apr 19 07:00:20 UTC 2016


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

--- Comment #21 from Sebastian Dröge (slomo) <slomo at coaxion.net> ---
Review of attachment 326247:
 --> (https://bugzilla.gnome.org/review?bug=764744&attachment=326247)

Generally looks good, thanks! Just some minor things

How does the mcast ipv6 test fail exactly?

::: gst/rtsp-server/rtsp-stream.c
@@ +314,3 @@
+  /* We expect all udpsrcs to be cleaned up by this point. */
+  if (g_hash_table_size (priv->udpsrcs) > 0)
+    GST_ERROR ("Unreffing udpsrcs hash table that contains elements.");

This should probably be more like a g_critical() :)

@@ +1492,3 @@
+    if (transport_udpsrcs->udpsrc[0] == NULL
+        && transport_udpsrcs->udpsrc[1] == NULL)
+      g_slice_free (GstRTSPStreamUDPSrcs, transport_udpsrcs);

The problem here is that you free the transport if udpsrc[1] == NULL. No matter
if udpsrc[0] is NULL or not. Doesn't this fail for streams without RTCP now
because you will free the data and not keep track of it?

@@ +2704,3 @@
 }

+/* Must be called with a lock. */

Which lock? :)

-- 
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