intel / libyami

Yet Another Media Infrastructure. it is core part of media codec with hardware acceleration, it is yummy to your video experience on Linux like platform.
Apache License 2.0
146 stars 106 forks source link

decoder/base: always clear output buffer on destruct #799

Closed uartie closed 6 years ago

uartie commented 6 years ago

Decoded frames in the output buffer hold a reference to Surface objects. If the output buffer is not flushed before vaTerminate is called (which happens because DisplayPtr goes away), then this causes vaDestroySurface to fail (seg fault) when that output buffer is flushed and surfaces are destroyed. This can happen during decoder destruction where user does not explicitly flush output.

Signed-off-by: U. Artie Eoff ullysses.a.eoff@intel.com

xuguangxin commented 6 years ago

thanks, U.Artie and Haihao