diff options
Diffstat (limited to 'Source/WebCore/rendering/RenderImageResourceStyleImage.cpp')
-rw-r--r-- | Source/WebCore/rendering/RenderImageResourceStyleImage.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp b/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp index 42b37ddd6..ac3f4a092 100644 --- a/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp +++ b/Source/WebCore/rendering/RenderImageResourceStyleImage.cpp @@ -57,15 +57,18 @@ void RenderImageResourceStyleImage::shutdown() { ASSERT(m_renderer); m_styleImage->removeClient(m_renderer); - m_cachedImage = 0; + if (m_cachedImage) { + image()->stopAnimation(); + m_cachedImage = nullptr; + } } -PassRefPtr<Image> RenderImageResourceStyleImage::image(int width, int height) const +RefPtr<Image> RenderImageResourceStyleImage::image(const IntSize& size) const { // Generated content may trigger calls to image() while we're still pending, don't assert but gracefully exit. - if (m_styleImage->isPendingImage()) - return 0; - return m_styleImage->image(m_renderer, IntSize(width, height)); + if (m_styleImage->isPending()) + return nullptr; + return m_styleImage->image(m_renderer, size); } void RenderImageResourceStyleImage::setContainerSizeForRenderer(const IntSize& size) |