aboutsummaryrefslogtreecommitdiffstats
path: root/src/tag.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2012-08-08 21:01:25 +0200
committerMax Kellermann <max@duempel.org>2012-08-08 21:01:25 +0200
commitc1f90a99f4b33b3b2c05d051f19bd7ed3472c5ff (patch)
treea1eb2e93ff43309ee30fd77ec57db6d10d8fd612 /src/tag.c
parent510097cc37ffe88ddd1bf0587add83654777ded1 (diff)
downloadmpd-c1f90a99f4b33b3b2c05d051f19bd7ed3472c5ff.tar.gz
mpd-c1f90a99f4b33b3b2c05d051f19bd7ed3472c5ff.tar.xz
mpd-c1f90a99f4b33b3b2c05d051f19bd7ed3472c5ff.zip
tag_pool: use GStaticMutex
Eliminates explicit global initialisation.
Diffstat (limited to 'src/tag.c')
-rw-r--r--src/tag.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/tag.c b/src/tag.c
index c0faa7ab2..b59c23b23 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -168,9 +168,9 @@ static void tag_delete_item(struct tag *tag, unsigned idx)
assert(idx < tag->num_items);
tag->num_items--;
- g_mutex_lock(tag_pool_lock);
+ g_static_mutex_lock(&tag_pool_lock);
tag_pool_put_item(tag->items[idx]);
- g_mutex_unlock(tag_pool_lock);
+ g_static_mutex_unlock(&tag_pool_lock);
if (tag->num_items - idx > 0) {
memmove(tag->items + idx, tag->items + idx + 1,
@@ -202,10 +202,10 @@ void tag_free(struct tag *tag)
assert(tag != NULL);
- g_mutex_lock(tag_pool_lock);
+ g_static_mutex_lock(&tag_pool_lock);
for (i = tag->num_items; --i >= 0; )
tag_pool_put_item(tag->items[i]);
- g_mutex_unlock(tag_pool_lock);
+ g_static_mutex_unlock(&tag_pool_lock);
if (tag->items == bulk.items) {
#ifndef NDEBUG
@@ -231,10 +231,10 @@ struct tag *tag_dup(const struct tag *tag)
ret->num_items = tag->num_items;
ret->items = ret->num_items > 0 ? g_malloc(items_size(tag)) : NULL;
- g_mutex_lock(tag_pool_lock);
+ g_static_mutex_lock(&tag_pool_lock);
for (unsigned i = 0; i < tag->num_items; i++)
ret->items[i] = tag_pool_dup_item(tag->items[i]);
- g_mutex_unlock(tag_pool_lock);
+ g_static_mutex_unlock(&tag_pool_lock);
return ret;
}
@@ -255,7 +255,7 @@ tag_merge(const struct tag *base, const struct tag *add)
ret->num_items = base->num_items + add->num_items;
ret->items = ret->num_items > 0 ? g_malloc(items_size(ret)) : NULL;
- g_mutex_lock(tag_pool_lock);
+ g_static_mutex_lock(&tag_pool_lock);
/* copy all items from "add" */
@@ -270,7 +270,7 @@ tag_merge(const struct tag *base, const struct tag *add)
if (!tag_has_type(add, base->items[i]->type))
ret->items[n++] = tag_pool_dup_item(base->items[i]);
- g_mutex_unlock(tag_pool_lock);
+ g_static_mutex_unlock(&tag_pool_lock);
assert(n <= ret->num_items);
@@ -502,9 +502,9 @@ tag_add_item_internal(struct tag *tag, enum tag_type type,
items_size(tag) - sizeof(struct tag_item *));
}
- g_mutex_lock(tag_pool_lock);
+ g_static_mutex_lock(&tag_pool_lock);
tag->items[i] = tag_pool_get_item(type, value, len);
- g_mutex_unlock(tag_pool_lock);
+ g_static_mutex_unlock(&tag_pool_lock);
g_free(p);
}