diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs index 92291600ca3..c0a9e960385 100644 --- a/components/script/dom/htmlimageelement.rs +++ b/components/script/dom/htmlimageelement.rs @@ -369,7 +369,7 @@ impl VirtualMethods for HTMLImageElement { &atom!("src") => { self.update_image(mutation.new_value(attr).map(|value| { // FIXME(ajeffrey): convert directly from AttrValue to DOMString - (DOMString::from(&**value), window_from_node(self).get_url()) + (DOMString::from(&**value), document_from_node(self).base_url()) })); }, _ => {}, diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 31ec16b06d5..ae81304687a 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -37329,6 +37329,18 @@ "url": "/html/semantics/embedded-content/the-iframe-element/iframe-with-base.html" } ], + "html/semantics/embedded-content/the-img-element/document-base-url.html": [ + { + "path": "html/semantics/embedded-content/the-img-element/document-base-url.html", + "references": [ + [ + "/html/semantics/embedded-content/the-img-element/document-base-url-ref.html", + "==" + ] + ], + "url": "/html/semantics/embedded-content/the-img-element/document-base-url.html" + } + ], "html/semantics/embedded-content/the-video-element/video_content_image.htm": [ { "path": "html/semantics/embedded-content/the-video-element/video_content_image.htm", @@ -40525,6 +40537,18 @@ ], "url": "/html/semantics/embedded-content/the-iframe-element/iframe-with-base.html" } + ], + "html/semantics/embedded-content/the-img-element/document-base-url.html": [ + { + "path": "html/semantics/embedded-content/the-img-element/document-base-url.html", + "references": [ + [ + "/html/semantics/embedded-content/the-img-element/document-base-url-ref.html", + "==" + ] + ], + "url": "/html/semantics/embedded-content/the-img-element/document-base-url.html" + } ] } }, diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html new file mode 100644 index 00000000000..6e55b21ff0b --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url-ref.html @@ -0,0 +1,5 @@ + + +Document base URL img test + +cat diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url.html b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url.html new file mode 100644 index 00000000000..074209cc04a --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/document-base-url.html @@ -0,0 +1,7 @@ + + +Document base URL img test + + + +cat diff --git a/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg new file mode 100644 index 00000000000..a4f14f54d60 Binary files /dev/null and b/tests/wpt/web-platform-tests/html/semantics/embedded-content/the-img-element/resources/cat.jpg differ