From c3130a5bd9105c4c119e855010ec39605dcb3dcf Mon Sep 17 00:00:00 2001 From: Anton Ivanov Date: Wed, 5 Mar 2025 23:00:53 -0800 Subject: Avoid copying Transaction objects unneccessarily. Flag: EXEMPT refactor Bug: 385156191 Test: presubmit Change-Id: Ibd9d64bd7d41adbf5af0dacd660b6aaed6bc8741 --- libs/gui/SurfaceComposerClient.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'libs/gui/SurfaceComposerClient.cpp') diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index 65313c0fac..359a5288a6 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -828,11 +828,10 @@ SurfaceComposerClient::Transaction::Transaction() { mTransactionCompletedListener = TransactionCompletedListener::getInstance(); } -SurfaceComposerClient::Transaction::Transaction(const Transaction& other) { - mState = other.mState; - mListenerCallbacks = other.mListenerCallbacks; - mTransactionCompletedListener = TransactionCompletedListener::getInstance(); -} +SurfaceComposerClient::Transaction::Transaction(Transaction&& other) + : mTransactionCompletedListener(TransactionCompletedListener::getInstance()), + mState(std::move(other.mState)), + mListenerCallbacks(std::move(other.mListenerCallbacks)) {} void SurfaceComposerClient::Transaction::sanitize(int pid, int uid) { uint32_t permissions = LayerStatePermissions::getTransactionPermissions(pid, uid); -- cgit v1.2.3-59-g8ed1b