rtpbin: Free storage when freeing session

This commit is contained in:
Danny Smith 2019-02-08 10:09:17 +01:00
parent 0c7c31d197
commit 037d70c01b

View file

@ -833,9 +833,11 @@ free_session (GstRtpBinSession * sess, GstRtpBin * bin)
gst_element_set_locked_state (sess->demux, TRUE);
gst_element_set_locked_state (sess->session, TRUE);
gst_element_set_locked_state (sess->storage, TRUE);
gst_element_set_state (sess->demux, GST_STATE_NULL);
gst_element_set_state (sess->session, GST_STATE_NULL);
gst_element_set_state (sess->storage, GST_STATE_NULL);
remove_recv_rtp (bin, sess);
remove_recv_rtcp (bin, sess);
@ -844,6 +846,7 @@ free_session (GstRtpBinSession * sess, GstRtpBin * bin)
gst_bin_remove (GST_BIN_CAST (bin), sess->session);
gst_bin_remove (GST_BIN_CAST (bin), sess->demux);
gst_bin_remove (GST_BIN_CAST (bin), sess->storage);
g_slist_foreach (sess->elements, (GFunc) remove_bin_element, bin);
g_slist_free (sess->elements);