omx: call gst_omx_buffer_unmap() when handling BUFFER_DONE
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Thu, 24 May 2018 14:28:21 +0000 (16:28 +0200)
committerGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Thu, 30 Aug 2018 08:59:30 +0000 (10:59 +0200)
commitd2f7e21ab9be7f3d543a50b6cbac6dffca33384a
tree82f4c9a959de7ee4ab98f7b64c62718f0c6e6a59
parent3b92b225540c861131fad96730d4546460c2ede6
omx: call gst_omx_buffer_unmap() when handling BUFFER_DONE

When using a input buffer pool, the buffer may be released to the pool when
gst_omx_buffer_unmap() is called. We need to have buf->used unset at
this point as the pool may use it to check the status of the pool.

{Empty,Fill}BufferDone is called from OMX internal threads while
messages are handled from gst elements' thread. Best to do all this
when handling the message so we don't mess with OMX threads and keep
the original thread/logic split.

https://bugzilla.gnome.org/show_bug.cgi?id=796918
omx/gstomx.c