Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2220)

Unified Diff: cc/damage_tracker.cc

Issue 11142025: cc: Remove wtf hashmap from damage tracker (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/damage_tracker.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/damage_tracker.cc
diff --git a/cc/damage_tracker.cc b/cc/damage_tracker.cc
index bd1c31f411b9a0aec5db4e0a542b4611a95b6dbc..02415e3c0b782638623454f3e44371019de0a0f6 100644
--- a/cc/damage_tracker.cc
+++ b/cc/damage_tracker.cc
@@ -151,10 +151,14 @@ void CCDamageTracker::updateDamageTrackingState(const std::vector<CCLayerImpl*>&
FloatRect CCDamageTracker::removeRectFromCurrentFrame(int layerID, bool& layerIsNew)
{
- layerIsNew = !m_currentRectHistory->contains(layerID);
-
- // take() will remove the entry from the map, or if not found, return a default (empty) rect.
- return m_currentRectHistory->take(layerID);
+ RectMap::iterator iter = m_currentRectHistory->find(layerID);
+ layerIsNew = iter == m_currentRectHistory->end();
+ if (layerIsNew)
+ return FloatRect();
+
+ FloatRect ret = iter->second;
+ m_currentRectHistory->erase(iter);
+ return ret;
}
void CCDamageTracker::saveRectForNextFrame(int layerID, const FloatRect& targetSpaceRect)
@@ -162,7 +166,7 @@ void CCDamageTracker::saveRectForNextFrame(int layerID, const FloatRect& targetS
// This layer should not yet exist in next frame's history.
ASSERT(layerID > 0);
ASSERT(m_nextRectHistory->find(layerID) == m_nextRectHistory->end());
- m_nextRectHistory->set(layerID, targetSpaceRect);
+ (*m_nextRectHistory)[layerID] = targetSpaceRect;
}
FloatRect CCDamageTracker::trackDamageFromActiveLayers(const std::vector<CCLayerImpl*>& layerList, int targetSurfaceLayerID)
@@ -207,11 +211,7 @@ FloatRect CCDamageTracker::trackDamageFromLeftoverRects()
FloatRect damageRect = FloatRect();
for (RectMap::iterator it = m_currentRectHistory->begin(); it != m_currentRectHistory->end(); ++it)
-#if WTF_NEW_HASHMAP_ITERATORS_INTERFACE
- damageRect.unite(it->value);
-#else
damageRect.unite(it->second);
-#endif
m_currentRectHistory->clear();
« no previous file with comments | « cc/damage_tracker.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698