pass down sync void config to jsi module (#41470)

Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/41470

Changelog: [Internal]

actually pass down the config value -_-

Reviewed By: christophpurrer

Differential Revision: D51279435

fbshipit-source-id: 674d7558a30742f6bf67cacfb4025e3c7d3646f7
This commit is contained in:
Phillip Pan 2023-11-13 20:58:16 -08:00 коммит произвёл Facebook GitHub Bot
Родитель 8feb84a447
Коммит d502380b91
2 изменённых файлов: 7 добавлений и 7 удалений

Просмотреть файл

@ -135,7 +135,8 @@ TurboModuleProviderFunctionType TurboModuleManager::createTurboModuleProvider(
nativeMethodCallInvoker_ = nativeMethodCallInvoker_ =
std::weak_ptr<NativeMethodCallInvoker>(nativeMethodCallInvoker_), std::weak_ptr<NativeMethodCallInvoker>(nativeMethodCallInvoker_),
delegate_ = jni::make_weak(delegate_), delegate_ = jni::make_weak(delegate_),
javaPart_ = jni::make_weak(javaPart_)]( javaPart_ = jni::make_weak(javaPart_),
enableSyncVoidMethods](
const std::string& name) -> std::shared_ptr<TurboModule> { const std::string& name) -> std::shared_ptr<TurboModule> {
auto turboModuleCache = turboModuleCache_.lock(); auto turboModuleCache = turboModuleCache_.lock();
auto jsCallInvoker = jsCallInvoker_.lock(); auto jsCallInvoker = jsCallInvoker_.lock();
@ -197,7 +198,7 @@ TurboModuleProviderFunctionType TurboModuleManager::createTurboModuleProvider(
.instance = moduleInstance, .instance = moduleInstance,
.jsInvoker = jsCallInvoker, .jsInvoker = jsCallInvoker,
.nativeMethodCallInvoker = nativeMethodCallInvoker, .nativeMethodCallInvoker = nativeMethodCallInvoker,
.shouldVoidMethodsExecuteSync = false}; .shouldVoidMethodsExecuteSync = enableSyncVoidMethods};
auto turboModule = delegate->cthis()->getTurboModule(name, params); auto turboModule = delegate->cthis()->getTurboModule(name, params);
turboModuleCache->insert({name, turboModule}); turboModuleCache->insert({name, turboModule});
@ -209,8 +210,8 @@ TurboModuleProviderFunctionType TurboModuleManager::createTurboModuleProvider(
}; };
} }
TurboModuleProviderFunctionType TurboModuleManager::createLegacyModuleProvider( TurboModuleProviderFunctionType
bool enableSyncVoidMethods) { TurboModuleManager::createLegacyModuleProvider() {
return [legacyModuleCache_ = std::weak_ptr<ModuleCache>(legacyModuleCache_), return [legacyModuleCache_ = std::weak_ptr<ModuleCache>(legacyModuleCache_),
jsCallInvoker_ = std::weak_ptr<CallInvoker>(jsCallInvoker_), jsCallInvoker_ = std::weak_ptr<CallInvoker>(jsCallInvoker_),
nativeMethodCallInvoker_ = nativeMethodCallInvoker_ =
@ -322,7 +323,7 @@ void TurboModuleManager::installJSIBindings(
TurboModuleBinding::install( TurboModuleBinding::install(
runtime, runtime,
createTurboModuleProvider(enableSyncVoidMethods), createTurboModuleProvider(enableSyncVoidMethods),
createLegacyModuleProvider(enableSyncVoidMethods)); createLegacyModuleProvider());
}); });
} }

Просмотреть файл

@ -68,8 +68,7 @@ class TurboModuleManager : public jni::HybridClass<TurboModuleManager> {
TurboModuleProviderFunctionType createTurboModuleProvider( TurboModuleProviderFunctionType createTurboModuleProvider(
bool enableSyncVoidMethods); bool enableSyncVoidMethods);
TurboModuleProviderFunctionType createLegacyModuleProvider( TurboModuleProviderFunctionType createLegacyModuleProvider();
bool enableSyncVoidMethods);
}; };
} // namespace facebook::react } // namespace facebook::react