diff options
Diffstat (limited to 'Source/WebCore/loader/cache/CachedImage.h')
-rw-r--r-- | Source/WebCore/loader/cache/CachedImage.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/WebCore/loader/cache/CachedImage.h b/Source/WebCore/loader/cache/CachedImage.h index 42c7814..79643d7 100644 --- a/Source/WebCore/loader/cache/CachedImage.h +++ b/Source/WebCore/loader/cache/CachedImage.h @@ -75,7 +75,7 @@ public: void clear(); - bool stillNeedsLoad() const { return !errorOccurred() && status() == Unknown && !isLoading(); } + bool stillNeedsLoad() const { return (!errorOccurred() && status() == Unknown && !isLoading()) || (m_autoLoadWasPreventedBySettings && !inCache()); } void load(); // ImageObserver @@ -86,6 +86,8 @@ public: virtual void animationAdvanced(const Image*); virtual void changedInRect(const Image*, const IntRect&); + void setAutoLoadWasPreventedBySettings(bool prevented) { m_autoLoadWasPreventedBySettings = prevented; } + private: void createImage(); size_t maximumDecodedImageSize(); @@ -98,6 +100,7 @@ private: RefPtr<Image> m_image; Timer<CachedImage> m_decodedDataDeletionTimer; bool m_shouldPaintBrokenImage; + bool m_autoLoadWasPreventedBySettings; }; } |