diff --git a/src/browser/ui/ReactDOMComponent.js b/src/browser/ui/ReactDOMComponent.js index cbe512a74aa..730db6eede6 100644 --- a/src/browser/ui/ReactDOMComponent.js +++ b/src/browser/ui/ReactDOMComponent.js @@ -206,6 +206,13 @@ ReactDOMComponent.Mixin = { }, receiveComponent: function(nextComponent, transaction) { + if (nextComponent === this) { + // Since props and context are immutable after the component is + // mounted, we can do a cheap identity compare here to determine + // if this is a superfluous reconcile. + return; + } + assertValidProps(nextComponent.props); ReactComponent.Mixin.receiveComponent.call( this,