diff --git a/gst/udp/gstudpsrc.c b/gst/udp/gstudpsrc.c index e0b3f7f12d1431af92c6b13620ca3a418d1f3e29..f957007468974c1dc8a991356e2475fa721a546b 100644 --- a/gst/udp/gstudpsrc.c +++ b/gst/udp/gstudpsrc.c @@ -1213,6 +1213,7 @@ receive_error: { gst_buffer_unmap (outbuf, &info); gst_memory_unmap (udpsrc->extra_mem, &extra_info); + g_clear_object (&saddr); if (g_error_matches (err, G_IO_ERROR, G_IO_ERROR_BUSY) || g_error_matches (err, G_IO_ERROR, G_IO_ERROR_CANCELLED)) { g_clear_error (&err); @@ -1226,6 +1227,7 @@ receive_error: } skip_error: { + g_clear_object (&saddr); GST_ELEMENT_ERROR (udpsrc, STREAM, DECODE, (NULL), ("UDP buffer to small to skip header")); return GST_FLOW_ERROR;