Index: Source/core/html/HTMLImageElement.cpp |
diff --git a/Source/core/html/HTMLImageElement.cpp b/Source/core/html/HTMLImageElement.cpp |
index ff90239a68388aead040d64d21e63c905971801b..66af892b4e50659a31d9763e1fa483a34de4bb7f 100644 |
--- a/Source/core/html/HTMLImageElement.cpp |
+++ b/Source/core/html/HTMLImageElement.cpp |
@@ -27,6 +27,7 @@ |
#include "HTMLNames.h" |
#include "RuntimeEnabledFeatures.h" |
#include "bindings/v8/ScriptEventListener.h" |
+#include "core/css/parser/SizesAttributeParser.h" |
#include "core/dom/Attribute.h" |
#include "core/fetch/ImageResource.h" |
#include "core/html/HTMLAnchorElement.h" |
@@ -49,6 +50,7 @@ HTMLImageElement::HTMLImageElement(Document& document, HTMLFormElement* form) |
, m_compositeOperator(CompositeSourceOver) |
, m_imageDevicePixelRatio(1.0f) |
, m_formWasSetByParser(false) |
+ , m_effectiveSize(0) |
{ |
ScriptWrappable::init(this); |
if (form && form->inDocument()) { |
@@ -164,6 +166,8 @@ void HTMLImageElement::parseAttribute(const QualifiedName& name, const AtomicStr |
toRenderImage(renderer())->setImageDevicePixelRatio(m_imageDevicePixelRatio); |
} |
m_imageLoader.updateFromElementIgnoringPreviousError(); |
+ } else if (RuntimeEnabledFeatures::sizesAttributeEnabled() && name == sizesAttr) { |
+ m_effectiveSize = SizesAttributeParser::findEffectiveSize(value, MediaValues::create(document(), MediaValues::DynamicMode)); |
} else if (name == usemapAttr) { |
setIsLink(!value.isNull()); |
} else if (name == compositeAttr) { |