rtpbasedepayload: fix leaks in error code paths
authorTim-Philipp Müller <tim@centricular.com>
Thu, 30 Jul 2015 11:50:56 +0000 (12:50 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Thu, 30 Jul 2015 11:50:56 +0000 (12:50 +0100)
This was introduced when reshuffling the buffer unmaps
in commit bc14cdf529e21356ea7b2c8f34614958a91f7260
rtp: rtpbasedepayload: add process_rtp_packet() vfunc

Fixes make check-valgrind.

https://bugzilla.gnome.org/show_bug.cgi?id=750235

gst-libs/gst/rtp/gstrtpbasedepayload.c

index 95d260d..fac757d 100644 (file)
@@ -487,11 +487,13 @@ invalid_buffer:
   }
 dropping:
   {
+    gst_rtp_buffer_unmap (&rtp);
     GST_WARNING_OBJECT (filter, "%d <= 100, dropping old packet", gap);
     return GST_FLOW_OK;
   }
 no_process:
   {
+    gst_rtp_buffer_unmap (&rtp);
     /* this is not fatal but should be filtered earlier */
     GST_ELEMENT_ERROR (filter, STREAM, NOT_IMPLEMENTED, (NULL),
         ("The subclass does not have a process or process_rtp_packet method"));