diff options
| author | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-02 23:35:12 -0400 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2009-10-02 23:35:12 -0400 |
| commit | f8e4bc9f7789b98b54fe04df56555ca8c630df70 (patch) | |
| tree | 21ffd2455c4ce35e916cb9361b767db13aac7903 /libs/surfaceflinger/SurfaceFlinger.cpp | |
| parent | 8df16d63d4e1c70cf75a9acc4f24e4e1abca5abc (diff) | |
| parent | 0c4cec7e4df87181486d280c98fba9c0f4774c37 (diff) | |
| download | frameworks_base-f8e4bc9f7789b98b54fe04df56555ca8c630df70.zip frameworks_base-f8e4bc9f7789b98b54fe04df56555ca8c630df70.tar.gz frameworks_base-f8e4bc9f7789b98b54fe04df56555ca8c630df70.tar.bz2 | |
Merge change I0c4cec7e into eclair
* changes:
Attempt to fix [2152536] ANR in browser
Diffstat (limited to 'libs/surfaceflinger/SurfaceFlinger.cpp')
| -rw-r--r-- | libs/surfaceflinger/SurfaceFlinger.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/surfaceflinger/SurfaceFlinger.cpp b/libs/surfaceflinger/SurfaceFlinger.cpp index eb0983a..f2b918f 100644 --- a/libs/surfaceflinger/SurfaceFlinger.cpp +++ b/libs/surfaceflinger/SurfaceFlinger.cpp @@ -1073,6 +1073,8 @@ status_t SurfaceFlinger::purgatorizeLayer_l(const sp<LayerBase>& layerBase) // remove the layer from the main list (through a transaction). ssize_t err = removeLayer_l(layerBase); + layerBase->onRemoved(); + // it's possible that we don't find a layer, because it might // have been destroyed already -- this is not technically an error // from the user because there is a race between BClient::destroySurface(), @@ -1321,7 +1323,6 @@ status_t SurfaceFlinger::removeSurface(SurfaceID index) if (layer != 0) { err = purgatorizeLayer_l(layer); if (err == NO_ERROR) { - layer->onRemoved(); setTransactionFlags(eTransactionNeeded); } } |
