From: Tim-Philipp Müller Date: Fri, 24 Oct 2014 22:47:21 +0000 (+0100) Subject: udp: don't use soon-to-be-deprecated g_cancellable_reset() X-Git-Tag: 1.19.3~509^2~3616 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f54110fd3e844b0297ccd8ab321669857ee21ed8;p=platform%2Fupstream%2Fgstreamer.git udp: don't use soon-to-be-deprecated g_cancellable_reset() From the API documentation: "Note that it is generally not a good idea to reuse an existing cancellable for more operations after it has been cancelled once, as this function might tempt you to do. The recommended practice is to drop the reference to a cancellable after cancelling it, and let it die with the outstanding async operations. You should create a fresh cancellable for further async operations." https://bugzilla.gnome.org/show_bug.cgi?id=739132 --- diff --git a/gst/udp/gstdynudpsink.c b/gst/udp/gstdynudpsink.c index 9c2b6bb..2a23ddc 100644 --- a/gst/udp/gstdynudpsink.c +++ b/gst/udp/gstdynudpsink.c @@ -574,7 +574,8 @@ gst_dynudpsink_unlock_stop (GstBaseSink * bsink) udpsink = GST_DYNUDPSINK (bsink); - g_cancellable_reset (udpsink->cancellable); + g_object_unref (udpsink->cancellable); + udpsink->cancellable = g_cancellable_new (); return TRUE; } diff --git a/gst/udp/gstmultiudpsink.c b/gst/udp/gstmultiudpsink.c index 2f1a8ec..0b2b9dd 100644 --- a/gst/udp/gstmultiudpsink.c +++ b/gst/udp/gstmultiudpsink.c @@ -1845,7 +1845,8 @@ gst_multiudpsink_unlock_stop (GstBaseSink * bsink) sink = GST_MULTIUDPSINK (bsink); - g_cancellable_reset (sink->cancellable); + g_object_unref (sink->cancellable); + sink->cancellable = g_cancellable_new (); return TRUE; } diff --git a/gst/udp/gstudpsrc.c b/gst/udp/gstudpsrc.c index 6e3126f..9d205b8 100644 --- a/gst/udp/gstudpsrc.c +++ b/gst/udp/gstudpsrc.c @@ -1139,7 +1139,8 @@ gst_udpsrc_unlock_stop (GstBaseSrc * bsrc) src = GST_UDPSRC (bsrc); GST_LOG_OBJECT (src, "No longer flushing"); - g_cancellable_reset (src->cancellable); + g_object_unref (src->cancellable); + src->cancellable = g_cancellable_new (); return TRUE; }