@@ -88,7 +88,8 @@ void JankTracker::onJankData(int32_t layerId, gui::JankData data) {
8888}
8989
9090void JankTracker::addJankListenerLocked (int32_t layerId, sp<IBinder> listener) {
91- for (auto it = mJankListeners .find (layerId); it != mJankListeners .end (); it++) {
91+ auto range = mJankListeners .equal_range (layerId);
92+ for (auto it = range.first ; it != range.second ; it++) {
9293 if (it->second .mListener == listener) {
9394 // Undo the duplicate increment in addJankListener.
9495 sListenerCount --;
@@ -106,7 +107,8 @@ void JankTracker::doFlushJankData(int32_t layerId) {
106107 std::vector<sp<IBinder>> toSend;
107108
108109 mLock .lock ();
109- for (auto it = mJankListeners .find (layerId); it != mJankListeners .end ();) {
110+ auto range = mJankListeners .equal_range (layerId);
111+ for (auto it = range.first ; it != range.second ;) {
110112 if (!jankData.empty ()) {
111113 toSend.emplace_back (it->second .mListener );
112114 }
@@ -133,7 +135,8 @@ void JankTracker::doFlushJankData(int32_t layerId) {
133135
134136void JankTracker::markJankListenerForRemovalLocked (int32_t layerId, sp<IBinder> listener,
135137 int64_t afterVysnc) {
136- for (auto it = mJankListeners .find (layerId); it != mJankListeners .end (); it++) {
138+ auto range = mJankListeners .equal_range (layerId);
139+ for (auto it = range.first ; it != range.second ; it++) {
137140 if (it->second .mListener == listener) {
138141 it->second .mRemoveAfter = std::max (static_cast <int64_t >(0 ), afterVysnc);
139142 return ;
@@ -156,7 +159,8 @@ int64_t JankTracker::transferAvailableJankData(int32_t layerId,
156159
157160void JankTracker::dropJankListener (int32_t layerId, sp<IBinder> listener) {
158161 const std::lock_guard<std::mutex> _l (mLock );
159- for (auto it = mJankListeners .find (layerId); it != mJankListeners .end (); it++) {
162+ auto range = mJankListeners .equal_range (layerId);
163+ for (auto it = range.first ; it != range.second ; it++) {
160164 if (it->second .mListener == listener) {
161165 mJankListeners .erase (it);
162166 sListenerCount --;
0 commit comments