From d964c50cff5e36c251ff5077066069c66ffc1086 Mon Sep 17 00:00:00 2001 From: Sam Rawlins Date: Fri, 6 Sep 2019 18:31:59 +0000 Subject: [PATCH] clear contents on TemplateElement#setInnerHtml before appending Fixes #18249 Change-Id: I29b12163ad5809010c4ee4ff4ce892399d26e3ea Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/112485 Reviewed-by: Terry Lucas Commit-Queue: Samuel Rawlins --- sdk/lib/html/dart2js/html_dart2js.dart | 3 ++- .../templates/html/impl/impl_HTMLTemplateElement.darttemplate | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart index 0736e0643aafe..303ec9e4fad43 100644 --- a/sdk/lib/html/dart2js/html_dart2js.dart +++ b/sdk/lib/html/dart2js/html_dart2js.dart @@ -28281,11 +28281,12 @@ class TemplateElement extends HtmlElement { * * See also: * - * * + * * */ void setInnerHtml(String html, {NodeValidator validator, NodeTreeSanitizer treeSanitizer}) { text = null; + content.nodes.clear(); var fragment = createFragment(html, validator: validator, treeSanitizer: treeSanitizer); diff --git a/tools/dom/templates/html/impl/impl_HTMLTemplateElement.darttemplate b/tools/dom/templates/html/impl/impl_HTMLTemplateElement.darttemplate index f37da9680dc2a..7fb61fe381a0f 100644 --- a/tools/dom/templates/html/impl/impl_HTMLTemplateElement.darttemplate +++ b/tools/dom/templates/html/impl/impl_HTMLTemplateElement.darttemplate @@ -14,11 +14,12 @@ $!MEMBERS * * See also: * - * * + * * */ void setInnerHtml(String html, {NodeValidator validator, NodeTreeSanitizer treeSanitizer}) { text = null; + content.nodes.clear(); var fragment = createFragment( html, validator: validator, treeSanitizer: treeSanitizer);