From 7c247ab166d942ce16230c86716e9b16e248b283 Mon Sep 17 00:00:00 2001 From: Stefan Sauer Date: Fri, 17 Oct 2014 12:10:44 +0200 Subject: [PATCH] typefind: use gslice for typefine data Also use our free function in the failure case. --- gst/typefind/gsttypefindfunctions.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/gst/typefind/gsttypefindfunctions.c b/gst/typefind/gsttypefindfunctions.c index a169066593..06689d9f29 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