From 9ece58ebaa46f8b5e90a6ad71be4919e1dc9c563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Markb=C3=A5ge?= Date: Mon, 24 Apr 2023 19:26:50 -0400 Subject: [PATCH] Go through the toString path for booleanish strings and .name property (#26720) This is consistent with what we used to do but not what we want to do. --- packages/react-dom-bindings/src/client/ReactDOMComponent.js | 5 ++++- packages/react-dom-bindings/src/client/ReactDOMInput.js | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/react-dom-bindings/src/client/ReactDOMComponent.js b/packages/react-dom-bindings/src/client/ReactDOMComponent.js index bd7dfc0d53..2603d8db35 100644 --- a/packages/react-dom-bindings/src/client/ReactDOMComponent.js +++ b/packages/react-dom-bindings/src/client/ReactDOMComponent.js @@ -685,7 +685,10 @@ function setProp( if (__DEV__) { checkAttributeStringCoercion(value, key); } - domElement.setAttribute(key, (value: any)); + domElement.setAttribute( + key, + enableTrustedTypesIntegration ? (value: any) : '' + (value: any), + ); } else { domElement.removeAttribute(key); } diff --git a/packages/react-dom-bindings/src/client/ReactDOMInput.js b/packages/react-dom-bindings/src/client/ReactDOMInput.js index 6b16d47953..409bf1e907 100644 --- a/packages/react-dom-bindings/src/client/ReactDOMInput.js +++ b/packages/react-dom-bindings/src/client/ReactDOMInput.js @@ -188,7 +188,7 @@ export function updateInput( if (__DEV__) { checkAttributeStringCoercion(name, 'name'); } - node.name = name; + node.name = toString(getToStringValue(name)); } else { node.removeAttribute('name'); }