 Chromium Code Reviews
 Chromium Code Reviews Issue 1047563002:
  Fire load event for an image even if it was the last image we loaded successfully.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master
    
  
    Issue 1047563002:
  Fire load event for an image even if it was the last image we loaded successfully.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master| Index: Source/core/loader/ImageLoader.cpp | 
| diff --git a/Source/core/loader/ImageLoader.cpp b/Source/core/loader/ImageLoader.cpp | 
| index 3c0d8b679fdac3776145ae9c6e980eae03d51343..53b0e7118ab693bdb10a407430b555e5de63467f 100644 | 
| --- a/Source/core/loader/ImageLoader.cpp | 
| +++ b/Source/core/loader/ImageLoader.cpp | 
| @@ -289,8 +289,13 @@ void ImageLoader::doUpdateFromElement(BypassMainWorldBehavior bypassBehavior, Up | 
| } | 
| ImageResource* oldImage = m_image.get(); | 
| - if (newImage != oldImage) { | 
| - sourceImageChanged(); | 
| + bool resizingToViewport = updateBehavior == UpdateSizeChanged && m_element->layoutObject() && m_element->layoutObject()->isImage(); | 
| + bool selectedNewImage = newImage != oldImage; | 
| 
esprehn
2015/03/31 00:34:54
I would just inline the newImage != oldImage check
 | 
| + if (resizingToViewport && !selectedNewImage) { | 
| 
esprehn
2015/03/31 00:34:54
I might add a method like isLayoutImage()
and the
 
rhogan
2015/03/31 19:03:19
Mm, I passed on this. Hope that's OK.
 | 
| + toLayoutImage(m_element->layoutObject())->intrinsicSizeChanged(); | 
| + } else { | 
| + if (selectedNewImage) | 
| + sourceImageChanged(); | 
| if (m_hasPendingLoadEvent) { | 
| loadEventSender().cancelEvent(this); | 
| @@ -318,8 +323,6 @@ void ImageLoader::doUpdateFromElement(BypassMainWorldBehavior bypassBehavior, Up | 
| if (oldImage) | 
| oldImage->removeClient(this); | 
| - } else if (updateBehavior == UpdateSizeChanged && m_element->layoutObject() && m_element->layoutObject()->isImage()) { | 
| - toLayoutImage(m_element->layoutObject())->intrinsicSizeChanged(); | 
| } | 
| if (LayoutImageResource* imageResource = layoutImageResource()) |