summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Sauer <ensonic@users.sf.net>2014-10-17 12:10:44 +0200
committerStefan Sauer <ensonic@users.sf.net>2014-10-17 12:47:50 +0200
commit7c247ab166d942ce16230c86716e9b16e248b283 (patch)
treeafef963f1d6d10d7b0c3940b2f62c630bd7065ba
parentd0aa9f9a344980939e9064400a381a2e145cc08d (diff)
typefind: use gslice for typefine data
Also use our free function in the failure case.
-rw-r--r--gst/typefind/gsttypefindfunctions.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c
index a16906659..06689d9f2 100644
--- a/gst/typefind/gsttypefindfunctions.c
+++ b/gst/typefind/gsttypefindfunctions.c
@@ -5357,12 +5357,12 @@ sw_data_destroy (GstTypeFindData * sw_data)
{
if (G_LIKELY (sw_data->caps != NULL))
gst_caps_unref (sw_data->caps);
- g_free (sw_data);
+ g_slice_free (GstTypeFindData, sw_data);
}
#define TYPE_FIND_REGISTER_START_WITH(plugin,name,rank,ext,_data,_size,_probability)\
G_BEGIN_DECLS{ \
- GstTypeFindData *sw_data = g_new (GstTypeFindData, 1); \
+ GstTypeFindData *sw_data = g_slice_new (GstTypeFindData); \
sw_data->data = (const guint8 *)_data; \
sw_data->size = _size; \
sw_data->probability = _probability; \
@@ -5370,8 +5370,7 @@ G_BEGIN_DECLS{ \
if (!gst_type_find_register (plugin, name, rank, start_with_type_find,\
ext, sw_data->caps, sw_data, \
(GDestroyNotify) (sw_data_destroy))) { \
- gst_caps_unref (sw_data->caps); \
- g_free (sw_data); \
+ sw_data_destroy (sw_data); \
} \
}G_END_DECLS
@@ -5392,7 +5391,7 @@ riff_type_find (GstTypeFind * tf, gpointer private)
#define TYPE_FIND_REGISTER_RIFF(plugin,name,rank,ext,_data) \
G_BEGIN_DECLS{ \
- GstTypeFindData *sw_data = g_new (GstTypeFindData, 1); \
+ GstTypeFindData *sw_data = g_slice_new (GstTypeFindData); \
sw_data->data = (gpointer)_data; \
sw_data->size = 4; \
sw_data->probability = GST_TYPE_FIND_MAXIMUM; \
@@ -5400,8 +5399,7 @@ G_BEGIN_DECLS{ \
if (!gst_type_find_register (plugin, name, rank, riff_type_find, \
ext, sw_data->caps, sw_data, \
(GDestroyNotify) (sw_data_destroy))) { \
- gst_caps_unref (sw_data->caps); \
- g_free (sw_data); \
+ sw_data_destroy (sw_data); \
} \
}G_END_DECLS