BufferHubQueueProducer reset buffers on disconnect
When Surface.cpp disconnects a IGraphicBufferProducer, it clears up all
the buffer cache it holds. Thus our implementation should do the same.
New tests:
1/ BufferHubQueueProducerTest.ConnectDisconnectReconnect: tests
IGraphicBufferProducer to behave proper after disconnect and
re-connect.
2/ BufferHubQueueTest.TestFreeAllBuffers: tests BufferHubQueue handles
FreeAllBuffers() properly under different producer/consumer state.
Bug: 64402829
Test: Pause and resume GVR video player demo and observer no more fails
around IGraphicBufferProducer::requestBuffer and Surface::dequeueBuffer.
Change-Id: Ia61e3f991248135cecf22039045f6960226bda42
6 files changed