summaryrefslogtreecommitdiff
path: root/libs/gui/SurfaceComposerClient.cpp
diff options
context:
space:
mode:
author Rob Carr <racarr@google.com> 2022-04-05 22:14:02 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-04-05 22:14:02 +0000
commitdbdd2e6c11ca3653b7fd140df6eb9d966a9e2d37 (patch)
tree7eb986f5a24d492374f09523eaee40811ef38f2f /libs/gui/SurfaceComposerClient.cpp
parent81061238c19d7ebabb453697a8c643324cf6c68e (diff)
parentade0d07ba1ae18d9aee25b22ff6ef49599217f67 (diff)
Merge "DO NOT MERGE: SurfaceFlinger: Add Transaction#sanitize" into sc-v2-dev
Diffstat (limited to 'libs/gui/SurfaceComposerClient.cpp')
-rw-r--r--libs/gui/SurfaceComposerClient.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp
index 725ea6571d..4bcc9d56c8 100644
--- a/libs/gui/SurfaceComposerClient.cpp
+++ b/libs/gui/SurfaceComposerClient.cpp
@@ -551,6 +551,13 @@ SurfaceComposerClient::Transaction::Transaction(const Transaction& other)
mListenerCallbacks = other.mListenerCallbacks;
}
+void SurfaceComposerClient::Transaction::sanitize() {
+ for (auto & [handle, composerState] : mComposerStates) {
+ composerState.state.sanitize(0 /* permissionMask */);
+ }
+ mInputWindowCommands.clear();
+}
+
std::unique_ptr<SurfaceComposerClient::Transaction>
SurfaceComposerClient::Transaction::createFromParcel(const Parcel* parcel) {
auto transaction = std::make_unique<Transaction>();
@@ -635,7 +642,6 @@ status_t SurfaceComposerClient::Transaction::readFromParcel(const Parcel* parcel
if (composerState.read(*parcel) == BAD_VALUE) {
return BAD_VALUE;
}
-
composerStates[surfaceControlHandle] = composerState;
}