deinterlace: Clean up error handling in chain and _push_history
authorJan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
Mon, 16 May 2022 12:14:46 +0000 (14:14 +0200)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Tue, 17 May 2022 10:56:23 +0000 (10:56 +0000)
commitd0fdfa76ae3bc69d0b3fcbb40867e7e367156be4
tree35b322563487061665c8daaf17fd0828af341fb9
parent718d31fe63c734e4cd6b9b05960b69b2f2d9d626
deinterlace: Clean up error handling in chain and _push_history

- Consistently unref the chained buffer at the end of the chain
  function, if we're not handing it off to `gst_pad_push`. This avoids a
  few buffer leaks in the error paths in `_chain` and `_push_history`.
- When mapping the video frame fails, return a flow error instead of
  crashing.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2428>
subprojects/gst-plugins-good/gst/deinterlace/gstdeinterlace.c