Merge remote-tracking branch 'origin/0.10'
[platform/upstream/gstreamer.git] / gst / gstcontrolsource.c
index a2b1161..b75c2ee 100644 (file)
@@ -56,11 +56,17 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT);
       "dynamic parameter control sources");
 
 G_DEFINE_ABSTRACT_TYPE_WITH_CODE (GstControlSource, gst_control_source,
-    G_TYPE_OBJECT, _do_init);
+    GST_TYPE_OBJECT, _do_init);
+
+static GObject *gst_control_source_constructor (GType type,
+    guint n_construct_params, GObjectConstructParam * construct_params);
 
 static void
 gst_control_source_class_init (GstControlSourceClass * klass)
 {
+  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+  gobject_class->constructor = gst_control_source_constructor;
 }
 
 static void
@@ -70,6 +76,20 @@ gst_control_source_init (GstControlSource * self)
   self->get_value_array = NULL;
 }
 
+static GObject *
+gst_control_source_constructor (GType type, guint n_construct_params,
+    GObjectConstructParam * construct_params)
+{
+  GObject *self;
+
+  self =
+      G_OBJECT_CLASS (gst_control_source_parent_class)->constructor (type,
+      n_construct_params, construct_params);
+  gst_object_ref_sink (self);
+
+  return self;
+}
+
 /**
  * gst_control_source_get_value:
  * @self: the #GstControlSource object