tocsetter: use new glib mutex api
authorStefan Sauer <ensonic@users.sf.net>
Tue, 3 Apr 2012 13:46:29 +0000 (15:46 +0200)
committerStefan Sauer <ensonic@users.sf.net>
Tue, 3 Apr 2012 13:59:18 +0000 (15:59 +0200)
gst/gsttocsetter.c

index bee9b34..4b98331 100644 (file)
@@ -58,7 +58,7 @@ static GQuark gst_toc_key;
 typedef struct
 {
   GstToc *toc;
-  GStaticMutex lock;
+  GMutex lock;
 } GstTocData;
 
 GType
@@ -103,8 +103,6 @@ gst_toc_data_free (gpointer p)
   if (data->toc)
     gst_toc_free (data->toc);
 
-  g_static_mutex_free (&data->lock);
-
   g_slice_free (GstTocData, data);
 }
 
@@ -115,19 +113,19 @@ gst_toc_setter_get_data (GstTocSetter * setter)
 
   data = g_object_get_qdata (G_OBJECT (setter), gst_toc_key);
   if (!data) {
-    static GStaticMutex create_mutex = G_STATIC_MUTEX_INIT;
+    static GMutex create_mutex;
 
     /* make sure no other thread is creating a GstTocData at the same time */
-    g_static_mutex_lock (&create_mutex);
+    g_mutex_lock (&create_mutex);
     data = g_object_get_qdata (G_OBJECT (setter), gst_toc_key);
     if (!data) {
       data = g_slice_new (GstTocData);
-      g_static_mutex_init (&data->lock);
+      g_mutex_init (&data->lock);
       data->toc = NULL;
       g_object_set_qdata_full (G_OBJECT (setter), gst_toc_key, data,
           gst_toc_data_free);
     }
-    g_static_mutex_unlock (&create_mutex);
+    g_mutex_unlock (&create_mutex);
   }
 
   return data;
@@ -151,12 +149,12 @@ gst_toc_setter_reset_toc (GstTocSetter * setter)
 
   data = gst_toc_setter_get_data (setter);
 
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
   if (data->toc) {
     gst_toc_free (data->toc);
     data->toc = NULL;
   }
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 }
 
 /**
@@ -204,12 +202,12 @@ gst_toc_setter_get_toc_copy (GstTocSetter * setter)
   g_return_val_if_fail (GST_IS_TOC_SETTER (setter), NULL);
 
   data = gst_toc_setter_get_data (setter);
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
 
   if (data->toc != NULL)
     ret = gst_toc_copy (data->toc);
 
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 
   return ret;
 }
@@ -233,13 +231,13 @@ gst_toc_setter_set_toc (GstTocSetter * setter, const GstToc * toc)
 
   data = gst_toc_setter_get_data (setter);
 
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
   if (data->toc)
     gst_toc_free (data->toc);
 
   data->toc = gst_toc_copy (toc);
 
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 }
 
 /**
@@ -268,11 +266,11 @@ gst_toc_setter_get_toc_entry (GstTocSetter * setter, const gchar * uid)
 
   data = gst_toc_setter_get_data (setter);
 
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
 
   ret = gst_toc_find_entry (data->toc, uid);
 
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 
   return ret;
 }
@@ -303,13 +301,13 @@ gst_toc_setter_get_toc_entry_copy (GstTocSetter * setter, const gchar * uid)
 
   data = gst_toc_setter_get_data (setter);
 
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
 
   search = gst_toc_find_entry (data->toc, uid);
   if (search != NULL)
     ret = gst_toc_entry_copy (search);
 
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 
   return ret;
 }
@@ -341,7 +339,7 @@ gst_toc_setter_add_toc_entry (GstTocSetter * setter, const gchar * parent_uid,
 
   data = gst_toc_setter_get_data (setter);
 
-  g_static_mutex_lock (&data->lock);
+  g_mutex_lock (&data->lock);
 
   copy_entry = gst_toc_entry_copy (entry);
 
@@ -356,7 +354,7 @@ gst_toc_setter_add_toc_entry (GstTocSetter * setter, const gchar * parent_uid,
     }
   }
 
-  g_static_mutex_unlock (&data->lock);
+  g_mutex_unlock (&data->lock);
 
   return ret;
 }