Index: third_party/WebKit/Source/core/loader/ImageLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/ImageLoader.cpp b/third_party/WebKit/Source/core/loader/ImageLoader.cpp |
index 86f65618292a28c53500d98bb06686c25897ba40..47836a690c392217dc1b0c2f1074abad05fff3d1 100644 |
--- a/third_party/WebKit/Source/core/loader/ImageLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/ImageLoader.cpp |
@@ -547,12 +547,13 @@ void ImageLoader::timerFired(TimerBase*) |
void ImageLoader::dispatchPendingEvent(ImageEventSender* eventSender) |
{ |
RESOURCE_LOADING_DVLOG(1) << "ImageLoader::dispatchPendingEvent " << this; |
- ASSERT(eventSender == &loadEventSender() || eventSender == &errorEventSender()); |
const AtomicString& eventType = eventSender->eventType(); |
if (eventType == EventTypeNames::load) |
dispatchPendingLoadEvent(); |
if (eventType == EventTypeNames::error) |
dispatchPendingErrorEvent(); |
+ if (eventType == EventTypeNames::loadend) |
+ dispatchPendingLoadendEvent(); |
} |
void ImageLoader::dispatchPendingLoadEvent() |
@@ -584,6 +585,15 @@ void ImageLoader::dispatchPendingErrorEvent() |
updatedHasPendingEvent(); |
} |
+void ImageLoader::dispatchPendingLoadendEvent() |
+{ |
+ if (element()->document().frame()) { |
+ dispatchLoadendEvent(); |
+ } |
+ |
+ updatedHasPendingEvent(); |
+} |
+ |
bool ImageLoader::getImageAnimationPolicy(ImageAnimationPolicy& policy) |
{ |
if (!element()->document().settings()) |