diff --git a/src/renderers/dom/client/wrappers/ReactDOMOption.js b/src/renderers/dom/client/wrappers/ReactDOMOption.js index ede7bd74a5..9567a7c48a 100644 --- a/src/renderers/dom/client/wrappers/ReactDOMOption.js +++ b/src/renderers/dom/client/wrappers/ReactDOMOption.js @@ -16,7 +16,6 @@ var ReactChildren = require('ReactChildren'); var ReactClass = require('ReactClass'); var ReactDOMSelect = require('ReactDOMSelect'); var ReactElement = require('ReactElement'); -var ReactInstanceMap = require('ReactInstanceMap'); var ReactPropTypes = require('ReactPropTypes'); var assign = require('Object.assign'); @@ -56,7 +55,7 @@ var ReactDOMOption = ReactClass.createClass({ } // Look up whether this option is 'selected' via parent-based context - var context = ReactInstanceMap.get(this)._context; + var context = this.context; var selectValue = context[valueContextKey]; // If context key is null (e.g., no specified value or after initial mount) diff --git a/src/renderers/shared/reconciler/ReactCompositeComponent.js b/src/renderers/shared/reconciler/ReactCompositeComponent.js index 1f6b2a635c..11806131b8 100644 --- a/src/renderers/shared/reconciler/ReactCompositeComponent.js +++ b/src/renderers/shared/reconciler/ReactCompositeComponent.js @@ -326,12 +326,10 @@ var ReactCompositeComponentMixin = { */ _maskContext: function(context) { var maskedContext = null; - // This really should be getting the component class for the element, - // but we know that we're not going to need it for built-ins. - if (typeof this._currentElement.type === 'string') { - return emptyObject; - } - var contextTypes = this._currentElement.type.contextTypes; + var Component = ReactNativeComponent.getComponentClassForElement( + this._currentElement + ); + var contextTypes = Component.contextTypes; if (!contextTypes) { return emptyObject; }