From 9315517dec300e8ba9a9e24709e4efe57f515f1f Mon Sep 17 00:00:00 2001 From: Sebastian Markbage Date: Tue, 18 Aug 2015 17:33:13 -0700 Subject: [PATCH] Don't use owner to determine if the auto-bailout should be used I didn't realize that we actually special cased this. This is an unfortunate heuristic but it helps minimize the harm that this optimization does. --- .../dom/client/wrappers/__tests__/ReactDOMSelect-test.js | 9 ++++++++- src/renderers/shared/reconciler/ReactReconciler.js | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js b/src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js index 1eb09237ce..f1cdc7baf9 100644 --- a/src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js +++ b/src/renderers/dom/client/wrappers/__tests__/ReactDOMSelect-test.js @@ -226,7 +226,14 @@ describe('ReactDOMSelect', function() { // Changing the `value` prop should change the selected options. objectToString.animal = 'monkey'; - ReactDOM.render(el, container); + + var el2 = + ; + ReactDOM.render(el2, container); expect(node.options[0].selected).toBe(true); // monkey expect(node.options[1].selected).toBe(false); // giraffe diff --git a/src/renderers/shared/reconciler/ReactReconciler.js b/src/renderers/shared/reconciler/ReactReconciler.js index 8e4a140c68..a5af42d2a2 100644 --- a/src/renderers/shared/reconciler/ReactReconciler.js +++ b/src/renderers/shared/reconciler/ReactReconciler.js @@ -65,8 +65,8 @@ var ReactReconciler = { internalInstance, nextElement, transaction, context ) { var prevElement = internalInstance._currentElement; + if (nextElement === prevElement && - nextElement._owner != null && context === internalInstance._context ) { // Since elements are immutable after the owner is rendered,