From 1f3663743422e7dbcbc22ec938437bd057151863 Mon Sep 17 00:00:00 2001 From: Ponnam Srinivas Date: Thu, 21 Sep 2017 15:21:36 +0530 Subject: [PATCH] omxh264enc: fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=787711 --- omx/gstomxh264enc.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/omx/gstomxh264enc.c b/omx/gstomxh264enc.c index cebb8c5e98..8a9c4c4bb6 100644 --- a/omx/gstomxh264enc.c +++ b/omx/gstomxh264enc.c @@ -605,10 +605,6 @@ gst_omx_h264_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, OMX_VIDEO_PARAM_PROFILELEVELTYPE param; const gchar *profile, *level; - caps = gst_caps_new_simple ("video/x-h264", - "stream-format", G_TYPE_STRING, "byte-stream", - "alignment", G_TYPE_STRING, "au", NULL); - GST_OMX_INIT_STRUCT (¶m); param.nPortIndex = GST_OMX_VIDEO_ENC (self)->enc_out_port->index; @@ -618,6 +614,10 @@ gst_omx_h264_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, if (err != OMX_ErrorNone && err != OMX_ErrorUnsupportedIndex) return NULL; + caps = gst_caps_new_simple ("video/x-h264", + "stream-format", G_TYPE_STRING, "byte-stream", + "alignment", G_TYPE_STRING, "au", NULL); + if (err == OMX_ErrorNone) { switch (param.eProfile) { case OMX_VIDEO_AVCProfileBaseline: @@ -643,6 +643,7 @@ gst_omx_h264_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, break; default: g_assert_not_reached (); + gst_caps_unref (caps); return NULL; } @@ -697,6 +698,7 @@ gst_omx_h264_enc_get_caps (GstOMXVideoEnc * enc, GstOMXPort * port, break; default: g_assert_not_reached (); + gst_caps_unref (caps); return NULL; } gst_caps_set_simple (caps,