diff --git a/Libraries/Utilities/MessageQueue.js b/Libraries/Utilities/MessageQueue.js index 4f00753aa10bff..5eec64eb6d8ab9 100644 --- a/Libraries/Utilities/MessageQueue.js +++ b/Libraries/Utilities/MessageQueue.js @@ -218,8 +218,8 @@ class MessageQueue { const moduleMethods = this._callableModules[module]; invariant( !!moduleMethods, - 'Module %s is not a registered callable module.', - module + 'Module %s is not a registered callable module (calling %s)', + module, method ); invariant( !!moduleMethods[method], diff --git a/React/Base/RCTRootView.m b/React/Base/RCTRootView.m index 01c03e1058433d..d8d0f90f2f19e8 100644 --- a/React/Base/RCTRootView.m +++ b/React/Base/RCTRootView.m @@ -15,6 +15,7 @@ #import "RCTAssert.h" #import "RCTBridge.h" +#import "RCTBridge+Private.h" #import "RCTEventDispatcher.h" #import "RCTKeyCommands.h" #import "RCTLog.h" @@ -92,7 +93,7 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge object:self]; if (!_bridge.loading) { - [self bundleFinishedLoading:_bridge]; + [self bundleFinishedLoading:[_bridge batchedBridge]]; } [self showLoadingView]; @@ -199,6 +200,9 @@ - (void)bridgeDidReload - (void)javaScriptDidLoad:(NSNotification *)notification { RCTAssertMainQueue(); + + // Use the (batched) bridge that's sent in the notification payload, so the + // RCTRootContentView is scoped to the right bridge RCTBridge *bridge = notification.userInfo[@"bridge"]; [self bundleFinishedLoading:bridge]; }