gst-libs/gst/audio/: Ref audio clock class from a thread-safe context to make sure...
authorTim-Philipp Müller <tim@centricular.net>
Thu, 10 Jan 2008 17:55:53 +0000 (17:55 +0000)
committerTim-Philipp Müller <tim@centricular.net>
Thu, 10 Jan 2008 17:55:53 +0000 (17:55 +0000)
Original commit message from CVS:
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
Ref audio clock class from a thread-safe context to make sure
we're not bit by GObjects lack of thread-safety here (#349410),
however unlikely that may be in practice.

ChangeLog
gst-libs/gst/audio/gstbaseaudiosink.c
gst-libs/gst/audio/gstbaseaudiosrc.c

index 01767551bd1bab2084560e9136938b631ba3772f..24bdd84f753157d97d2c87a1ffeeffaae89963cc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-01-10  Tim-Philipp Müller  <tim at centricular dot net>
+
+       * gst-libs/gst/audio/gstbaseaudiosink.c:
+         (gst_base_audio_sink_class_init):
+       * gst-libs/gst/audio/gstbaseaudiosrc.c:
+         (gst_base_audio_src_class_init):
+         Ref audio clock class from a thread-safe context to make sure
+         we're not bit by GObjects lack of thread-safety here (#349410),
+          however unlikely that may be in practice.
+
 2008-01-10  Sebastian Dröge  <slomo@circular-chaos.org>
 
        * autogen.sh:
index a7d85349103e160a2118ec593b197ecb19ab1e86..290cfe35166e388fa51343b6dde6f1dce74836c9 100644 (file)
@@ -209,6 +209,10 @@ gst_base_audio_sink_class_init (GstBaseAudioSinkClass * klass)
       GST_DEBUG_FUNCPTR (gst_base_audio_sink_async_play);
   gstbasesink_class->activate_pull =
       GST_DEBUG_FUNCPTR (gst_base_audio_sink_activate_pull);
+
+  /* ref class from a thread-safe context to work around missing bit of
+   * thread-safety in GObject */
+  g_type_class_ref (GST_TYPE_AUDIO_CLOCK);
 }
 
 static void
index c21c1a3849f0a9ddf2c91246de4cee37b5cd35f5..5716984b1fbf250603cc015d22b57058064c1a02 100644 (file)
@@ -169,6 +169,10 @@ gst_base_audio_src_class_init (GstBaseAudioSrcClass * klass)
   gstbasesrc_class->check_get_range =
       GST_DEBUG_FUNCPTR (gst_base_audio_src_check_get_range);
   gstbasesrc_class->fixate = GST_DEBUG_FUNCPTR (gst_base_audio_src_fixate);
+
+  /* ref class from a thread-safe context to work around missing bit of
+   * thread-safety in GObject */
+  g_type_class_ref (GST_TYPE_AUDIO_CLOCK);
 }
 
 static void