replicant-frameworks_native/services/surfaceflinger
Mathias Agopian 10125f00a5 Fix deadlock in SF.
problem was that we were acquiring a strong reference
on Connection object with a lock held, when those
got out of scope (lock still held) their dtor
could be called if all other refs had dropped,
the dtor would acquire the lock again to
remove the Connection from the main list. boom.

we rearange the code so this doesn't happen.

Bug: 6942208

Change-Id: I0a0ebabce2842d29d60d645b64aac2f26640e59b
2012-08-17 18:48:56 -07:00
..
DisplayHardware reimplement wifi display hack with new external display SF framework 2012-08-16 20:58:58 -07:00
tests get rid of the shared-memory control block 2012-07-25 21:13:10 -07:00
Android.mk break SF dependencies on libdvm and libandroid_runtime 2012-08-04 20:09:48 -07:00
Barrier.h move native services under services/ 2010-07-22 15:28:19 -07:00
Client.cpp SurfaceFlinger cleanup 2012-07-24 00:09:35 -07:00
Client.h split-up Client.h out of SurfaceFlinger.h 2012-06-18 16:47:56 -07:00
clz.cpp move native services under services/ 2010-07-22 15:28:19 -07:00
clz.h implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation" 2011-07-19 15:24:46 -07:00
DdmConnection.cpp fix pdk build 2012-08-06 13:55:56 -07:00
DdmConnection.h as a debug option SrufaceFlinger can now connect to DDMS 2011-08-15 20:44:40 -07:00
DisplayDevice.cpp refactor compositing code to avoid multiple eglMakeCurrent() calls 2012-08-16 20:58:58 -07:00
DisplayDevice.h refactor compositing code to avoid multiple eglMakeCurrent() calls 2012-08-16 20:58:58 -07:00
EventThread.cpp Fix deadlock in SF. 2012-08-17 18:48:56 -07:00
EventThread.h Fix deadlock in SF. 2012-08-17 18:48:56 -07:00
GLExtensions.cpp add support for [1974164] Be able to take a screen shot on the device 2010-09-24 14:56:39 -07:00
GLExtensions.h add support for [1974164] Be able to take a screen shot on the device 2010-09-24 14:56:39 -07:00
Layer.cpp libgui includes refactoring 2012-08-10 13:18:24 -07:00
Layer.h turn DisplayDevice into a reference-counted object 2012-08-05 00:40:46 -07:00
LayerBase.cpp reimplement wifi display hack with new external display SF framework 2012-08-16 20:58:58 -07:00
LayerBase.h turn DisplayDevice into a reference-counted object 2012-08-05 00:40:46 -07:00
LayerDim.cpp turn DisplayDevice into a reference-counted object 2012-08-05 00:40:46 -07:00
LayerDim.h turn DisplayDevice into a reference-counted object 2012-08-05 00:40:46 -07:00
LayerScreenshot.cpp libgui includes refactoring 2012-08-10 13:18:24 -07:00
LayerScreenshot.h turn DisplayDevice into a reference-counted object 2012-08-05 00:40:46 -07:00
MessageQueue.cpp one more step towards multiple display support 2012-07-10 14:29:27 -07:00
MessageQueue.h one more step towards multiple display support 2012-07-10 14:29:27 -07:00
MODULE_LICENSE_APACHE2 move native services under services/ 2010-07-22 15:28:19 -07:00
SurfaceFlinger.cpp refactor compositing code to avoid multiple eglMakeCurrent() calls 2012-08-16 20:58:58 -07:00
SurfaceFlinger.h refactor compositing code to avoid multiple eglMakeCurrent() calls 2012-08-16 20:58:58 -07:00
SurfaceTextureLayer.cpp update the binder protocol for connect to match that of queueBuffer 2012-04-23 20:06:02 -07:00
SurfaceTextureLayer.h update the binder protocol for connect to match that of queueBuffer 2012-04-23 20:06:02 -07:00
Transform.cpp Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE 2012-01-03 22:38:27 +00:00
Transform.h SurfaceFlinger: SCALING_MODE_FREEZE cropping support 2012-05-09 12:53:13 -07:00