commit | 97187553dc8469b03c2257b711f49d50a4109efb | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Jun 11 16:37:15 2022 +0000 |
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Sat Jun 11 16:37:15 2022 +0000 |
tree | 9f26f67acb39d731cec6ab8acca759b1d4d92ff3 | |
parent | d3a6849126e3637885ec4c4469a0318ec7befbe7 [diff] | |
parent | 61f357128df50305c1341fb01b0e733e14632ebc [diff] |
Merge cherrypicks of [18766212] into security-aosp-qt-release. Change-Id: I5d7eb5c41f8ad5b9d424a7534e2e91f6430b49ff
diff --git a/services/surfaceflinger/Scheduler/EventThread.cpp b/services/surfaceflinger/Scheduler/EventThread.cpp index 05bad4d..e5711c2 100644 --- a/services/surfaceflinger/Scheduler/EventThread.cpp +++ b/services/surfaceflinger/Scheduler/EventThread.cpp
@@ -123,6 +123,11 @@ } status_t EventThreadConnection::stealReceiveChannel(gui::BitTube* outChannel) { + std::scoped_lock lock(mLock); + if (mChannel.initCheck() != NO_ERROR) { + return NAME_NOT_FOUND; + } + outChannel->setReceiveFd(mChannel.moveReceiveFd()); return NO_ERROR; }
diff --git a/services/surfaceflinger/Scheduler/EventThread.h b/services/surfaceflinger/Scheduler/EventThread.h index 61530c6..15f21d5 100644 --- a/services/surfaceflinger/Scheduler/EventThread.h +++ b/services/surfaceflinger/Scheduler/EventThread.h
@@ -86,7 +86,8 @@ private: virtual void onFirstRef(); EventThread* const mEventThread; - gui::BitTube mChannel; + std::mutex mLock; + gui::BitTube mChannel GUARDED_BY(mLock); }; class EventThread {