[MOVED FROM BAD] Plug some leaks; try to make build bot happy again.

Original commit message from CVS:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_init),
(gst_y4m_encode_setcaps):
* tests/check/elements/y4menc.c: (GST_START_TEST):
Plug some leaks; try to make build bot happy again.
This commit is contained in:
Tim-Philipp Müller 2007-04-24 15:49:18 +00:00 committed by Jan Schmidt
parent 6104e2480d
commit 3110dafee8

View file

@ -109,8 +109,7 @@ static void
gst_y4m_encode_init (GstY4mEncode * filter, GstY4mEncodeClass * klass) gst_y4m_encode_init (GstY4mEncode * filter, GstY4mEncodeClass * klass)
{ {
filter->sinkpad = filter->sinkpad =
gst_pad_new_from_template (gst_static_pad_template_get gst_pad_new_from_static_template (&y4mencode_sink_factory, "sink");
(&y4mencode_sink_factory), "sink");
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad); gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
gst_pad_set_chain_function (filter->sinkpad, gst_pad_set_chain_function (filter->sinkpad,
GST_DEBUG_FUNCPTR (gst_y4m_encode_chain)); GST_DEBUG_FUNCPTR (gst_y4m_encode_chain));
@ -118,8 +117,7 @@ gst_y4m_encode_init (GstY4mEncode * filter, GstY4mEncodeClass * klass)
GST_DEBUG_FUNCPTR (gst_y4m_encode_setcaps)); GST_DEBUG_FUNCPTR (gst_y4m_encode_setcaps));
filter->srcpad = filter->srcpad =
gst_pad_new_from_template (gst_static_pad_template_get gst_pad_new_from_static_template (&y4mencode_src_factory, "src");
(&y4mencode_src_factory), "src");
gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad); gst_element_add_pad (GST_ELEMENT (filter), filter->srcpad);
gst_pad_use_fixed_caps (filter->srcpad); gst_pad_use_fixed_caps (filter->srcpad);
@ -140,6 +138,7 @@ gst_y4m_encode_setcaps (GstPad * pad, GstCaps * vscaps)
{ {
GstY4mEncode *filter; GstY4mEncode *filter;
GstStructure *structure; GstStructure *structure;
gboolean res;
gint w, h; gint w, h;
const GValue *fps, *par; const GValue *fps, *par;
@ -147,11 +146,13 @@ gst_y4m_encode_setcaps (GstPad * pad, GstCaps * vscaps)
structure = gst_caps_get_structure (vscaps, 0); structure = gst_caps_get_structure (vscaps, 0);
g_return_val_if_fail (gst_structure_get_int (structure, "width", &w), FALSE); res = gst_structure_get_int (structure, "width", &w);
g_return_val_if_fail (gst_structure_get_int (structure, "height", &h), FALSE); res &= gst_structure_get_int (structure, "height", &h);
fps = gst_structure_get_value (structure, "framerate"); res &= ((fps = gst_structure_get_value (structure, "framerate")) != NULL);
g_return_val_if_fail (w > 0 && h > 0
&& fps != NULL && GST_VALUE_HOLDS_FRACTION (fps), FALSE); if (!res || w <= 0 || h <= 0 || !GST_VALUE_HOLDS_FRACTION (fps))
return FALSE;
/* optional par info */ /* optional par info */
par = gst_structure_get_value (structure, "pixel-aspect-ratio"); par = gst_structure_get_value (structure, "pixel-aspect-ratio");
@ -169,7 +170,7 @@ gst_y4m_encode_setcaps (GstPad * pad, GstCaps * vscaps)
/* the template caps will do for the src pad, should always accept */ /* the template caps will do for the src pad, should always accept */
return gst_pad_set_caps (filter->srcpad, return gst_pad_set_caps (filter->srcpad,
gst_caps_copy (gst_pad_get_pad_template_caps (filter->srcpad))); gst_static_pad_template_get_caps (&y4mencode_src_factory));
} }
static inline GstBuffer * static inline GstBuffer *