diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | gst/rtpmanager/gstrtpbin.c | 11 |
2 files changed, 16 insertions, 0 deletions
@@ -1,5 +1,10 @@ 2007-05-14 David Schleef <ds@schleef.org> + * gst/rtpmanager/gstrtpbin.c: + g_hash_table_remove_all() only exists in 2.12. Work around. + +2007-05-14 David Schleef <ds@schleef.org> + * configure.ac: * gst/bayer/Makefile.am: * gst/bayer/gstbayer.c: diff --git a/gst/rtpmanager/gstrtpbin.c b/gst/rtpmanager/gstrtpbin.c index a6cd3840..58a06926 100644 --- a/gst/rtpmanager/gstrtpbin.c +++ b/gst/rtpmanager/gstrtpbin.c @@ -335,6 +335,12 @@ no_caps: } } +static gboolean +return_true (gpointer key, gpointer value, gpointer user_data) +{ + return TRUE; +} + static void gst_rtp_bin_clear_pt_map (GstRTPBin * bin) { @@ -345,7 +351,12 @@ gst_rtp_bin_clear_pt_map (GstRTPBin * bin) GstRTPBinSession *session = (GstRTPBinSession *) walk->data; GST_RTP_SESSION_LOCK (session); +#if 0 + /* This requires GLib 2.12 */ g_hash_table_remove_all (session->ptmap); +#else + g_hash_table_foreach_remove (session->ptmap, return_true, NULL); +#endif GST_RTP_SESSION_UNLOCK (session); } GST_RTP_BIN_UNLOCK (bin); |