SurfaceFlinger: Fix destruction of relatively Z-ordered layers.
We need to explicitly remove a layer from it's Z-order relative when the layer is removed from compositing, and not rely on being the last reference. In particular, at the time we are generating the list of visible layers by traversing, any layer which had just been removed will still be alive (but abandoned) with a ref in the previous list of visible layers. So we will succeed in promotion, and copy it to the new list. This way the layer achieves eternal life even after onRemoved is called. Bug: 36693738 Test: Manual from BR Change-Id: Ic6c3f64ceb0f603e7c0e51b136c23839858aa639
Loading
Please register or sign in to comment