Index: third_party/WebKit/Source/platform/graphics/BitmapImage.cpp |
diff --git a/third_party/WebKit/Source/platform/graphics/BitmapImage.cpp b/third_party/WebKit/Source/platform/graphics/BitmapImage.cpp |
index fad71475e10d2082229bafd35d958a839138e19c..6d63d9ad723b36c864a1baf2eb0860997a7f476b 100644 |
--- a/third_party/WebKit/Source/platform/graphics/BitmapImage.cpp |
+++ b/third_party/WebKit/Source/platform/graphics/BitmapImage.cpp |
@@ -107,7 +107,7 @@ bool BitmapImage::currentFrameHasSingleSecurityOrigin() const |
return true; |
} |
-void BitmapImage::destroyDecodedData(bool destroyAll) |
+void BitmapImage::destroyDecodedData() |
{ |
for (size_t i = 0; i < m_frames.size(); ++i) { |
// The underlying frame isn't actually changing (we're just trying to |
@@ -116,24 +116,10 @@ void BitmapImage::destroyDecodedData(bool destroyAll) |
m_frames[i].clear(false); |
} |
- size_t frameBytesCleared = m_source.clearCacheExceptFrame(destroyAll ? kNotFound : m_currentFrame); |
+ size_t frameBytesCleared = m_source.clearCacheExceptFrame(kNotFound); |
notifyMemoryChanged(-safeCast<int>(frameBytesCleared)); |
} |
-void BitmapImage::destroyDecodedDataIfNecessary() |
-{ |
- // Animated images >5MB are considered large enough that we'll only hang on |
- // to one frame at a time. |
- static const size_t cLargeAnimationCutoff = 5242880; |
- size_t allFrameBytes = 0; |
- for (size_t i = 0; i < m_frames.size(); ++i) |
- allFrameBytes += m_frames[i].m_frameBytes; |
- |
- if (allFrameBytes > cLargeAnimationCutoff) { |
- destroyDecodedData(false); |
- } |
-} |
- |
void BitmapImage::notifyMemoryChanged(int delta) |
{ |
if (delta && getImageObserver()) |
@@ -571,9 +557,6 @@ void BitmapImage::resetAnimation() |
m_repetitionsComplete = 0; |
m_desiredFrameStartTime = 0; |
m_animationFinished = false; |
- |
- // For extremely large animations, when the animation is reset, we just throw everything away. |
- destroyDecodedDataIfNecessary(); |
} |
bool BitmapImage::maybeAnimated() |
@@ -631,7 +614,6 @@ bool BitmapImage::internalAdvanceAnimation(bool skippingFrames) |
} else |
m_currentFrame = 0; |
} |
- destroyDecodedDataIfNecessary(); |
// We need to draw this frame if we advanced to it while not skipping, or if |
// while trying to skip frames we hit the last frame and thus had to stop. |