summaryrefslogtreecommitdiff
path: root/ext/wayland/waylandpool.c
diff options
context:
space:
mode:
authorMichael Smith <msmith@rdio.com>2012-10-03 11:05:06 -0700
committerMichael Smith <msmith@rdio.com>2012-10-03 11:05:06 -0700
commit0c2159a220da1eb1f851f45ecb978d3c9939ad24 (patch)
treedf62e201ffd814831a71942ac2b811c835585b50 /ext/wayland/waylandpool.c
parent4570e8bec853aa33cbe4dc8f2e67205a7d72136f (diff)
downloadgstreamer-plugins-bad-0c2159a220da1eb1f851f45ecb978d3c9939ad24.tar.gz
meta info: register thread-safely.
Diffstat (limited to 'ext/wayland/waylandpool.c')
-rw-r--r--ext/wayland/waylandpool.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/wayland/waylandpool.c b/ext/wayland/waylandpool.c
index dd12d1005..ca380ea55 100644
--- a/ext/wayland/waylandpool.c
+++ b/ext/wayland/waylandpool.c
@@ -61,12 +61,13 @@ gst_wl_meta_get_info (void)
{
static const GstMetaInfo *wl_meta_info = NULL;
- if (wl_meta_info == NULL) {
- wl_meta_info =
+ if (g_once_init_enter (&wl_meta_info)) {
+ const GstMetaInfo *meta =
gst_meta_register (GST_WL_META_API_TYPE, "GstWlMeta",
sizeof (GstWlMeta), (GstMetaInitFunction) NULL,
(GstMetaFreeFunction) gst_wl_meta_free,
(GstMetaTransformFunction) NULL);
+ g_once_init_leave (&wl_meta_info, meta);
}
return wl_meta_info;
}