| Index: Source/core/css/resolver/MatchedPropertiesCache.cpp
|
| diff --git a/Source/core/css/resolver/MatchedPropertiesCache.cpp b/Source/core/css/resolver/MatchedPropertiesCache.cpp
|
| index d3c222a1f1ebd376142c9127f55921f6945042c6..cbd9419cf4eae250937f17f1401a1438b7da66e5 100644
|
| --- a/Source/core/css/resolver/MatchedPropertiesCache.cpp
|
| +++ b/Source/core/css/resolver/MatchedPropertiesCache.cpp
|
| @@ -109,6 +109,18 @@ void MatchedPropertiesCache::clear()
|
| m_cache.clear();
|
| }
|
|
|
| +void MatchedPropertiesCache::clearViewportDependent()
|
| +{
|
| + Vector<unsigned, 16> toRemove;
|
| + for (Cache::iterator it = m_cache.begin(); it != m_cache.end(); ++it) {
|
| + CachedMatchedProperties* cacheItem = it->value.get();
|
| + if (cacheItem->renderStyle->hasViewportUnits())
|
| + toRemove.append(it->key);
|
| + }
|
| + for (size_t i = 0; i < toRemove.size(); ++i)
|
| + m_cache.remove(toRemove[i]);
|
| +}
|
| +
|
| void MatchedPropertiesCache::sweep(Timer<MatchedPropertiesCache>*)
|
| {
|
| // Look for cache entries containing a style declaration with a single ref and remove them.
|
|
|