basetransform: remove transform lock
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 23 Feb 2012 10:08:26 +0000 (11:08 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 23 Feb 2012 10:08:26 +0000 (11:08 +0100)
This is not needed anymore by the baseclass. subclasses should do their own
locking when needed.

libs/gst/base/gstbasetransform.c
libs/gst/base/gstbasetransform.h

index a8bdfa0..13dfae8 100644 (file)
@@ -351,12 +351,6 @@ static gboolean default_copy_metadata (GstBaseTransform * trans,
 static void
 gst_base_transform_finalize (GObject * object)
 {
-  GstBaseTransform *trans;
-
-  trans = GST_BASE_TRANSFORM (object);
-
-  g_mutex_clear (&trans->transform_lock);
-
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
@@ -444,7 +438,6 @@ gst_base_transform_init (GstBaseTransform * trans,
       GST_DEBUG_FUNCPTR (gst_base_transform_query));
   gst_element_add_pad (GST_ELEMENT (trans), trans->srcpad);
 
-  g_mutex_init (&trans->transform_lock);
   trans->priv->qos_enabled = DEFAULT_PROP_QOS;
   trans->cache_caps1 = NULL;
   trans->cache_caps2 = NULL;
@@ -1937,9 +1930,7 @@ gst_base_transform_getrange (GstPad * pad, GstObject * parent, guint64 offset,
   if (klass->before_transform)
     klass->before_transform (trans, inbuf);
 
-  GST_BASE_TRANSFORM_LOCK (trans);
   ret = gst_base_transform_handle_buffer (trans, inbuf, buffer);
-  GST_BASE_TRANSFORM_UNLOCK (trans);
 
 done:
   return ret;
@@ -1981,9 +1972,7 @@ gst_base_transform_chain (GstPad * pad, GstObject * parent, GstBuffer * buffer)
     klass->before_transform (trans, buffer);
 
   /* protect transform method and concurrent buffer alloc */
-  GST_BASE_TRANSFORM_LOCK (trans);
   ret = gst_base_transform_handle_buffer (trans, buffer, &outbuf);
-  GST_BASE_TRANSFORM_UNLOCK (trans);
 
   /* outbuf can be NULL, this means a dropped buffer, if we have a buffer but
    * GST_BASE_TRANSFORM_FLOW_DROPPED we will not push either. */
index af500e4..c70af9e 100644 (file)
@@ -77,26 +77,6 @@ G_BEGIN_DECLS
  */
 #define GST_BASE_TRANSFORM_FLOW_DROPPED   GST_FLOW_CUSTOM_SUCCESS
 
-/**
- * GST_BASE_TRANSFORM_LOCK:
- * @obj: base transform instance
- *
- * Obtain a lock to protect the transform function from concurrent access.
- *
- * Since: 0.10.13
- */
-#define GST_BASE_TRANSFORM_LOCK(obj)   g_mutex_lock (&GST_BASE_TRANSFORM_CAST (obj)->transform_lock)
-
-/**
- * GST_BASE_TRANSFORM_UNLOCK:
- * @obj: base transform instance
- *
- * Release the lock that protects the transform function from concurrent access.
- *
- * Since: 0.10.13
- */
-#define GST_BASE_TRANSFORM_UNLOCK(obj) g_mutex_unlock (&GST_BASE_TRANSFORM_CAST (obj)->transform_lock)
-
 typedef struct _GstBaseTransform GstBaseTransform;
 typedef struct _GstBaseTransformClass GstBaseTransformClass;
 typedef struct _GstBaseTransformPrivate GstBaseTransformPrivate;
@@ -131,8 +111,6 @@ struct _GstBaseTransform {
   /* MT-protected (with STREAM_LOCK) */
   GstSegment     segment;
 
-  GMutex        transform_lock;
-
   /*< private >*/
   GstBaseTransformPrivate *priv;