diff options
| author | 2009-10-02 23:35:12 -0400 | |
|---|---|---|
| committer | 2009-10-02 23:35:12 -0400 | |
| commit | 0b7b65da2faefb418ecb43b99025ccfabf4ceb32 (patch) | |
| tree | e101cea80b6258fa478b702cfef622747f3f9e39 /libs/surfaceflinger/LayerBase.cpp | |
| parent | 09fa0b2d73c386f69c10f2bf1f34625924b18300 (diff) | |
| parent | 0b3ad46a26dc3717260fa9347c77f673f3198606 (diff) | |
Merge change I0c4cec7e into eclair
* changes:
Attempt to fix [2152536] ANR in browser
Diffstat (limited to 'libs/surfaceflinger/LayerBase.cpp')
| -rw-r--r-- | libs/surfaceflinger/LayerBase.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libs/surfaceflinger/LayerBase.cpp b/libs/surfaceflinger/LayerBase.cpp index d83c8429eb..83814ccf9a 100644 --- a/libs/surfaceflinger/LayerBase.cpp +++ b/libs/surfaceflinger/LayerBase.cpp @@ -690,6 +690,14 @@ sp<LayerBaseClient::Surface> LayerBaseClient::createSurface() const const_cast<LayerBaseClient *>(this)); } +// called with SurfaceFlinger::mStateLock as soon as the layer is entered +// in the purgatory list +void LayerBaseClient::onRemoved() +{ + // wake up the condition + lcblk->setStatus(NO_INIT); +} + // --------------------------------------------------------------------------- LayerBaseClient::Surface::Surface( @@ -700,7 +708,6 @@ LayerBaseClient::Surface::Surface( { } - LayerBaseClient::Surface::~Surface() { /* |