convertframe: Use refcounting for the context
authorSebastian Dröge <sebastian@centricular.com>
Fri, 23 Nov 2018 11:16:43 +0000 (13:16 +0200)
committerSebastian Dröge <slomo@coaxion.net>
Fri, 23 Nov 2018 11:52:16 +0000 (11:52 +0000)
commit98109bd5de424b17b384e9134e7d5f130df43df0
treefb86cc6db7eb5c50042fc4b8a8a5ac3026d2ad9f
parent9be278d4f52b81a1e2b01d119e3a04bfd5fbc688
convertframe: Use refcounting for the context

While this creates a circular reference between the pipeline and the
context, this ensures that the context stays alive for as long as any
callbacks could be called on it. The circular reference is broken once
the conversion is finished (or error, or timeout), which will then cause
everything to be freed.

Previously it was possible that a callback could be called on the
context right after it was freed already.

Also use only a single context structure, the second structure does not
simplify anything and duplicates storage.
gst-libs/gst/video/convertframe.c