@@ -267,15 +267,15 @@ void VSyncDispatchTimerQueue::setTimer(nsecs_t targetTime, nsecs_t /*now*/) {
267267}
268268
269269void VSyncDispatchTimerQueue::rearmTimer (nsecs_t now) {
270- rearmTimerSkippingUpdateFor (now, mCallbacks .end ());
270+ rearmTimerSkippingUpdateFor (now, mCallbacks .cend ());
271271}
272272
273273void VSyncDispatchTimerQueue::rearmTimerSkippingUpdateFor (
274- nsecs_t now, CallbackMap::iterator const & skipUpdateIt) {
274+ nsecs_t now, CallbackMap::const_iterator skipUpdateIt) {
275275 std::optional<nsecs_t > min;
276276 std::optional<nsecs_t > targetVsync;
277277 std::optional<std::string_view> nextWakeupName;
278- for (auto it = mCallbacks .begin (); it != mCallbacks .end (); it++ ) {
278+ for (auto it = mCallbacks .cbegin (); it != mCallbacks .cend (); ++it ) {
279279 auto & callback = it->second ;
280280 if (!callback->wakeupTime () && !callback->hasPendingWorkloadUpdate ()) {
281281 continue ;
@@ -351,13 +351,12 @@ void VSyncDispatchTimerQueue::timerCallback() {
351351VSyncDispatchTimerQueue::CallbackToken VSyncDispatchTimerQueue::registerCallback (
352352 Callback callback, std::string callbackName) {
353353 std::lock_guard lock (mMutex );
354- return CallbackToken{
355- mCallbacks
356- .emplace (++mCallbackToken ,
357- std::make_shared<VSyncDispatchTimerQueueEntry>(std::move (callbackName),
358- std::move (callback),
359- mMinVsyncDistance ))
360- .first ->first };
354+ return mCallbacks
355+ .try_emplace (CallbackToken{++mCallbackToken },
356+ std::make_shared<VSyncDispatchTimerQueueEntry>(std::move (callbackName),
357+ std::move (callback),
358+ mMinVsyncDistance ))
359+ .first ->first ;
361360}
362361
363362void VSyncDispatchTimerQueue::unregisterCallback (CallbackToken token) {
@@ -367,7 +366,7 @@ void VSyncDispatchTimerQueue::unregisterCallback(CallbackToken token) {
367366 auto it = mCallbacks .find (token);
368367 if (it != mCallbacks .end ()) {
369368 entry = it->second ;
370- mCallbacks .erase (it);
369+ mCallbacks .erase (it-> first );
371370 }
372371 }
373372
0 commit comments