Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1171)

Unified Diff: Source/core/loader/ImageLoader.cpp

Issue 1314793010: Support fragment URLs for all kinds of SVG images (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Update DEPS to match Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/loader/ImageLoader.cpp
diff --git a/Source/core/loader/ImageLoader.cpp b/Source/core/loader/ImageLoader.cpp
index 85c24c77d5fb9ada412684ea02d9dfba008d9384..49f0b1a96513f3ee9f117e637a26f51fcb56e397 100644
--- a/Source/core/loader/ImageLoader.cpp
+++ b/Source/core/loader/ImageLoader.cpp
@@ -379,7 +379,7 @@ void ImageLoader::doUpdateFromElement(BypassMainWorldBehavior bypassBehavior, Up
m_hasPendingLoadEvent = newImage;
m_imageComplete = !newImage;
- updateLayoutObject();
+ updateLayoutObject(url);
// If newImage exists and is cached, addClient() will result in the load event
// being queued to fire. Ensure this happens after beforeload is dispatched.
if (newImage)
@@ -482,7 +482,7 @@ void ImageLoader::notifyFinished(Resource* resource)
if (m_image)
m_image->updateImageAnimationPolicy();
- updateLayoutObject();
+ updateLayoutObject(imageSourceToKURL(m_element->imageSourceURL()));
if (m_image && m_image->image() && m_image->image()->isSVGImage())
toSVGImage(m_image->image())->updateUseCounters(element()->document());
@@ -538,7 +538,7 @@ LayoutImageResource* ImageLoader::layoutImageResource()
return 0;
}
-void ImageLoader::updateLayoutObject()
+void ImageLoader::updateLayoutObject(const KURL& urlWithFragment)
{
LayoutImageResource* imageResource = layoutImageResource();
@@ -550,7 +550,7 @@ void ImageLoader::updateLayoutObject()
// change is happening between two images.
ImageResource* cachedImage = imageResource->cachedImage();
if (m_image != cachedImage && (m_imageComplete || !cachedImage))
- imageResource->setImageResource(m_image.get());
+ imageResource->setImageResource(m_image.get(), urlWithFragment);
}
void ImageLoader::updatedHasPendingEvent()

Powered by Google App Engine
This is Rietveld 408576698