diff options
| author | Alec Mouri <alecmouri@google.com> | 2025-05-15 16:39:49 +0000 |
|---|---|---|
| committer | aoleary <seanm187@gmail.com> | 2025-10-07 19:01:35 +0000 |
| commit | 3bb97db301463e83d1b1d42ebb1d5c130104d3e3 (patch) | |
| tree | 679858f47deb87e1b00f0af60469950d007b8def /services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h | |
| parent | 2087c1b260785789a88a511139d2fc1a0abec43a (diff) | |
Don't blur too many layerst13.0
An application requesting lots and lots of blurs:
a. Enables pixel stealing by measuring how long it takes to perform a
blur across windows
b. Probably isn't very valid anyways.
So, just arbitrarily pick an upper bound for blur requests that a
display is allowed to manage (10), and disable everything else.
Arbitrarily, pick the 10 "front-most" blurs to be respected.
Bug: 399120953
Flag: EXEMPT security
Test: Security PoC no longer PoCs
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:acf65e7b90c8313b3cf939d14b8299818d77cc18)
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a912eca8993334fe01e96f76168fa5e1889cb11a)
Merged-In: Ie7195eb852b52aff2f58da8bd095d8684baceef6
Change-Id: Ie7195eb852b52aff2f58da8bd095d8684baceef6
Diffstat (limited to 'services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h')
| -rw-r--r-- | services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h b/services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h index 428c19fe02..42fffe3c34 100644 --- a/services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h +++ b/services/surfaceflinger/CompositionEngine/include/compositionengine/impl/Output.h @@ -157,6 +157,7 @@ protected: private: void dirtyEntireOutput(); compositionengine::OutputLayer* findLayerRequestingBackgroundComposition() const; + void sanitizeOutputLayers() const; void finishPrepareFrame(); ui::Dataspace getBestDataspace(ui::Dataspace*, bool*) const; compositionengine::Output::ColorProfile pickColorProfile( |
