From 3741d5ce19566ebe4f166d3339f4423dbc3bff43 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Wed, 13 Apr 2016 12:26:13 +0300 Subject: [PATCH] framepositionner: Initialize all fields of the meta during initialization GstMetas are not allocated with all fields initialized to zeroes. --- ges/gstframepositionner.c | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/ges/gstframepositionner.c b/ges/gstframepositionner.c index ea5b6f1..5c7f57d 100644 --- a/ges/gstframepositionner.c +++ b/ges/gstframepositionner.c @@ -38,8 +38,10 @@ static GstFlowReturn gst_frame_positionner_transform_ip (GstBaseTransform * trans, GstBuffer * buf); static gboolean -gst_frame_positionner_meta_transform (GstBuffer * dest, GstMeta * meta, - GstBuffer * buffer, GQuark type, gpointer data); +gst_frame_positionner_meta_init (GstMeta * meta, gpointer params, + GstBuffer * buffer); +static gboolean gst_frame_positionner_meta_transform (GstBuffer * dest, + GstMeta * meta, GstBuffer * buffer, GQuark type, gpointer data); enum { @@ -428,15 +430,30 @@ gst_frame_positionner_get_info (void) const GstMetaInfo *meta = gst_meta_register (gst_frame_positionner_meta_api_get_type (), "GstFramePositionnerMeta", - sizeof (GstFramePositionnerMeta), (GstMetaInitFunction) NULL, - (GstMetaFreeFunction) NULL, - (GstMetaTransformFunction) gst_frame_positionner_meta_transform); + sizeof (GstFramePositionnerMeta), gst_frame_positionner_meta_init, + NULL, + gst_frame_positionner_meta_transform); g_once_init_leave (&meta_info, meta); } return meta_info; } static gboolean +gst_frame_positionner_meta_init (GstMeta * meta, gpointer params, + GstBuffer * buffer) +{ + GstFramePositionnerMeta *smeta; + + smeta = (GstFramePositionnerMeta *) meta; + + smeta->alpha = 0.0; + smeta->posx = smeta->posy = smeta->height = smeta->width = 0; + smeta->zorder = 0; + + return TRUE; +} + +static gboolean gst_frame_positionner_meta_transform (GstBuffer * dest, GstMeta * meta, GstBuffer * buffer, GQuark type, gpointer data) { -- 2.7.4