summaryrefslogtreecommitdiffstats
path: root/services/surfaceflinger/Layer.h
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2011-02-15 19:01:06 -0800
committerMathias Agopian <mathias@google.com>2011-02-16 15:31:07 -0800
commita1f47b90ab53af978be45b8bda16c5d084ae66e6 (patch)
treef674aa47e49d612d14b6d2fe106951850db2f43c /services/surfaceflinger/Layer.h
parent395d3326270de3a188e2b14808330a8dee9cbcf5 (diff)
downloadframeworks_native-a1f47b90ab53af978be45b8bda16c5d084ae66e6.zip
frameworks_native-a1f47b90ab53af978be45b8bda16c5d084ae66e6.tar.gz
frameworks_native-a1f47b90ab53af978be45b8bda16c5d084ae66e6.tar.bz2
fix a surface leak in SurfaceFlinger
SF kept a strong reference to ISurface until the window manager removed the surface from the screen. This fell appart when running standalone tests, that is when the window manager wasn't involved. When the window manager is around, it would clean-up surfaces even when an application died. with this change, SF is able to do its own cleanup without relying on the window manager. the change is very simple, we simply don't keep a reference to ISurface and make sure no more than one of them can be created. Change-Id: I61f2d7473bf8d4aa651549a846c34cdbb0d0c85a
Diffstat (limited to 'services/surfaceflinger/Layer.h')
-rw-r--r--services/surfaceflinger/Layer.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/services/surfaceflinger/Layer.h b/services/surfaceflinger/Layer.h
index d9a8be3..2b38414 100644
--- a/services/surfaceflinger/Layer.h
+++ b/services/surfaceflinger/Layer.h
@@ -213,7 +213,6 @@ private:
ClientRef mUserClientRef;
// constants
- sp<Surface> mSurface;
PixelFormat mFormat;
const GLExtensions& mGLExtensions;
bool mNeedsBlending;