replicant-frameworks_native/include/gui
Dan Stoza 2e36f2283f SurfaceFlinger: Fix PTS on stale buffers
SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was
getting out of sync for a few reasons. This change fixes these by
doing the following:

- Adds a check to re-synchronize the shadow copy every time we
  successfully acquire a buffer by first dropping stale buffers before
  removing the current buffer.
- Avoids trying to perform updates for buffers which have been rejected
  (for incorrect dimensions) by SurfaceFlinger.
- Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the
  consumer to notify the BufferQueue that it is maintaining a shadow
  copy of the queue and prevents it from dropping so many buffers
  during acquireBuffer that it ends up returning a buffer for which the
  consumer has not yet received an onFrameAvailable call.

Bug: 20096136
Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f
2015-04-30 15:29:05 -07:00
..
BitTube.h
BufferItem.h
BufferItemConsumer.h
BufferQueue.h
BufferQueueConsumer.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
BufferQueueCore.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
BufferQueueDefs.h
BufferQueueProducer.h
BufferSlot.h
ConsumerBase.h
CpuConsumer.h
DisplayEventReceiver.h
GLConsumer.h
GraphicBufferAlloc.h
GuiConfig.h
IConsumerListener.h
IDisplayEventConnection.h
IGraphicBufferAlloc.h
IGraphicBufferConsumer.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
IGraphicBufferProducer.h
IProducerListener.h
ISensorEventConnection.h
ISensorServer.h
ISurfaceComposer.h
ISurfaceComposerClient.h
Sensor.h
SensorEventQueue.h
SensorManager.h
StreamSplitter.h
Surface.h
SurfaceComposerClient.h
SurfaceControl.h