replicant-frameworks_native/services/surfaceflinger
Mathias Agopian 4cb18881b5 Fix a GraphicBuffer leak in SurfaceTexture
This leak was intentional, it was there to deal with the fact that
some gralloc implementations don't track buffer handles with
file-descriptors so buffers needed to stay alive until there were
registered, which is not guaranteed by binder transactions.

In this new implementation, we use a small BBinder holding a
reference to the buffer, which with tuck into the parcel. This forces
the reference to stay alive until the parcel is destroyed, which
is guaranteed (by construction) to happen after the buffer is
registered.

this allows the public facing API to not expose the previous hack.

Change-Id: I1dd6cd83679a2b7457ad628169e2851acc027143
2011-04-08 19:28:04 -07:00
..
DisplayHardware
tests remove more unused references to ISurface 2011-04-05 20:11:55 -07:00
Android.mk merge libsurfaceflinger_client into libgui 2011-03-25 18:42:40 -07:00
Barrier.h
clz.cpp
clz.h
GLExtensions.cpp
GLExtensions.h
Layer.cpp am bd340c7b: am b368f4d8: am 38caff23: Merge "SurfaceFlinger: Fix a typo." into honeycomb-mr1 2011-03-18 17:38:37 -07:00
Layer.h SurfaceFlinger: Respect the PROTECTED gralloc bit. 2011-03-10 16:25:48 -08:00
LayerBase.cpp
LayerBase.h SurfaceFlinger: Respect the PROTECTED gralloc bit. 2011-03-10 16:25:48 -08:00
LayerDim.cpp
LayerDim.h
MessageQueue.cpp
MessageQueue.h
MODULE_LICENSE_APACHE2
SurfaceFlinger.cpp Fix a GraphicBuffer leak in SurfaceTexture 2011-04-08 19:28:04 -07:00
SurfaceFlinger.h Fix a GraphicBuffer leak in SurfaceTexture 2011-04-08 19:28:04 -07:00
TextureManager.cpp
TextureManager.h
Transform.cpp
Transform.h