diff --git a/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js b/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
index 53e68defe5..974e6b4a8c 100644
--- a/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
+++ b/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
@@ -449,39 +449,6 @@ describe('ReactDOMComponent', function() {
expect(console.error.argsForCall[0][0]).toContain('clip-path');
});
- it('should only warn once about deprecated SVG attributes', function() {
- spyOn(console, 'error');
- var container = document.createElement('div');
- ReactDOM.render(
- ,
- container
- );
- expect(console.error.argsForCall.length).toBe(2);
- expect(console.error.argsForCall[0][0]).toContain('clipPath');
- expect(console.error.argsForCall[0][0]).toContain('clip-path');
- expect(console.error.argsForCall[1][0]).toContain('strokeWidth');
- expect(console.error.argsForCall[1][0]).toContain('stroke-width');
-
- ReactDOM.render(
- ,
- container
- );
- expect(console.error.argsForCall.length).toBe(3);
- expect(console.error.argsForCall[0][0]).toContain('clipPath');
- expect(console.error.argsForCall[0][0]).toContain('clip-path');
- expect(console.error.argsForCall[1][0]).toContain('strokeWidth');
- expect(console.error.argsForCall[1][0]).toContain('stroke-width');
- expect(console.error.argsForCall[2][0]).toContain('strokeOpacity');
- expect(console.error.argsForCall[2][0]).toContain('stroke-opacity');
- });
-
it('should update arbitrary hyphenated attributes for SVG tags', function() {
var container = document.createElement('div');
diff --git a/src/renderers/dom/shared/devtools/ReactDOMSVGDeprecatedAttributeDevtool.js b/src/renderers/dom/shared/devtools/ReactDOMSVGDeprecatedAttributeDevtool.js
index 164340c7a7..0bfd77f8fe 100644
--- a/src/renderers/dom/shared/devtools/ReactDOMSVGDeprecatedAttributeDevtool.js
+++ b/src/renderers/dom/shared/devtools/ReactDOMSVGDeprecatedAttributeDevtool.js
@@ -25,23 +25,20 @@ if (__DEV__) {
var warnedSVGAttributes = {};
var warnDeprecatedSVGAttribute = function(name) {
- if (reactProps.hasOwnProperty(name) && reactProps[name]) {
- return;
- }
-
if (!DOMProperty.properties.hasOwnProperty(name)) {
return;
}
+
+ if (reactProps.hasOwnProperty(name) && reactProps[name] ||
+ warnedSVGAttributes.hasOwnProperty(name) && warnedSVGAttributes[name]) {
+ return;
+ }
+
var { attributeName, attributeNamespace } = DOMProperty.properties[name];
if (attributeNamespace || name === attributeName) {
return;
}
- if (warnedSVGAttributes.hasOwnProperty(name) && warnedSVGAttributes[name]) {
- return;
- }
- warnedSVGAttributes[name] = true;
-
warning(
false,
'SVG property %s is deprecated. Use the original attribute name ' +