diff options
author | Olivier CrĂȘte <olivier.crete@collabora.com> | 2016-09-14 09:58:41 -0400 |
---|---|---|
committer | Olivier CrĂȘte <olivier.crete@collabora.com> | 2016-09-14 11:18:44 -0400 |
commit | 0c7e3a860c1ec86ed3fc44f3fd32a497efed8da2 (patch) | |
tree | 18dffa6960cfa7e2432889b9db082709e762f894 /gst | |
parent | b369e386ad87990339abe8887e0d5e549e131047 (diff) |
rtph263pay: Fix double free from coverity
CID #1372887
Diffstat (limited to 'gst')
-rw-r--r-- | gst/rtp/gstrtph263pay.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/gst/rtp/gstrtph263pay.c b/gst/rtp/gstrtph263pay.c index 489d2ad25..7ed2d6c1f 100644 --- a/gst/rtp/gstrtph263pay.c +++ b/gst/rtp/gstrtph263pay.c @@ -1412,7 +1412,7 @@ gst_rtp_h263_pay_mode_B_fragment (GstRtpH263Pay * rtph263pay, /*---------- MODE B MODE FRAGMENTATION ----------*/ - GstRtpH263PayMB *mac, *mac0; + GstRtpH263PayMB *mac; guint max_payload_size; GstRtpH263PayBoundry boundry; guint mb; @@ -1508,7 +1508,7 @@ gst_rtp_h263_pay_mode_B_fragment (GstRtpH263Pay * rtph263pay, // We are on MB layer - mac = mac0 = gst_rtp_h263_pay_mb_new (&boundry, 0); + mac = gst_rtp_h263_pay_mb_new (&boundry, 0); for (mb = 0; mb < format_props[context->piclayer->ptype_srcformat][1]; mb++) { GST_LOG ("================ START MB %d =================", mb); @@ -1520,11 +1520,9 @@ gst_rtp_h263_pay_mode_B_fragment (GstRtpH263Pay * rtph263pay, GST_LOG ("Error decoding MB - sbit: %d", 8 - ebit); GST_ERROR ("Error decoding in GOB"); - gst_rtp_h263_pay_mb_destroy (mac0); goto decode_error; } - gst_rtp_h263_pay_mb_destroy (gob->macroblocks[mb]); gob->macroblocks[mb] = mac; //If mb_type == stuffing, don't increment the mb address @@ -1547,7 +1545,6 @@ gst_rtp_h263_pay_mode_B_fragment (GstRtpH263Pay * rtph263pay, mac->mba, mac->start, mac->end, mac->length, mac->sbit, mac->ebit); GST_LOG ("================ END MB %d =================", mb); } - gst_rtp_h263_pay_mb_destroy (mac0); mb = 0; first = 0; |