by not sending custom downstream event twice and fix memleak when
not handling the event
https://bugzilla.gnome.org/show_bug.cgi?id=623196
GstRtpPtDemux *rtpdemux;
gboolean res = FALSE;
- rtpdemux = GST_RTP_PT_DEMUX (GST_PAD_PARENT (pad));
+ rtpdemux = GST_RTP_PT_DEMUX (gst_pad_get_parent (pad));
switch (GST_EVENT_TYPE (event)) {
case GST_EVENT_CUSTOM_DOWNSTREAM:
if (rtpdemuxpad)
res = gst_pad_push_event (rtpdemuxpad->pad, event);
+ else
+ gst_event_unref (event);
} else {
res = gst_pad_event_default (pad, event);
}
+ break;
}
default:
res = gst_pad_event_default (pad, event);
break;
}
+
+ gst_object_unref (rtpdemux);
return res;
}