Only return buffers back to OMX client after DSP processed them; don't return them prematurely in flush call.
Internally, before receiving the flush request, TI's omx component already sends the received buffers to the dsp.
DSP will return those buffers after processing them.
If we return the buffer within the flush completion handling, then we may return the buffers twice to the
OMX client. Since the buffers are returned, the OMX client owns the buffers and can do anything with them
(including freeing them), which can cause potential memory corruption bugs that are very difficult to
track down.
TI is still in a process of coming up with a better/cleaner solution by considering all the corner cases;
but lets have this workaround in first to unblock the tests.
bug - 2375037
1 file changed