[sf] Set visible regions change flag when layer starts drawing
If a layer state changes so it has a buffer or an effect like color then, update the flags to indicate that visiblity of a snapshot has changed. This will mark the visible regions flag in CE args and force CE to rebuild its layer stack. Without this flag, there was a scenario where CE would get a null snapshot and crash. Also crash early with traces if we ever pass a null snapshot to CE. Test: presubmit Bug: 238781169, 295069311, 294889236 Change-Id: I355502fbe7f1be38c46a5ed25233b6b07c6b4eeb
Showing
- libs/gui/include/gui/LayerState.h 1 addition, 0 deletionslibs/gui/include/gui/LayerState.h
- services/surfaceflinger/FrontEnd/RequestedLayerState.cpp 11 additions, 6 deletionsservices/surfaceflinger/FrontEnd/RequestedLayerState.cpp
- services/surfaceflinger/FrontEnd/RequestedLayerState.h 1 addition, 0 deletionsservices/surfaceflinger/FrontEnd/RequestedLayerState.h
- services/surfaceflinger/SurfaceFlinger.cpp 18 additions, 0 deletionsservices/surfaceflinger/SurfaceFlinger.cpp
- services/surfaceflinger/tests/unittests/LayerLifecycleManagerTest.cpp 48 additions, 0 deletions...faceflinger/tests/unittests/LayerLifecycleManagerTest.cpp
- services/surfaceflinger/tests/unittests/LayerSnapshotTest.cpp 9 additions, 3 deletions...ices/surfaceflinger/tests/unittests/LayerSnapshotTest.cpp
Loading
Please register or sign in to comment