From 046d1934a8ff393fb1f6c7998198aa4d70a1742e Mon Sep 17 00:00:00 2001 From: Andrei Shikov Date: Tue, 9 Nov 2021 09:24:21 -0800 Subject: [PATCH] Use built-in fbjni Java <-> std::string conversion for SurfaceHandler init Summary: The conversion between std::string and Java strings is failing when initializing the `SurfaceHandler`. Instead of manually converting strings, this change makes native init use built-in fbjni helper instead. Changelog: [Internal] Reviewed By: sammy-SC Differential Revision: D32281900 fbshipit-source-id: 056fce56b40c036d454925c8734bbf2a16f327ff --- .../facebook/react/fabric/jni/SurfaceHandlerBinding.cpp | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp index bf16b199922..9e9287638de 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp +++ b/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/SurfaceHandlerBinding.cpp @@ -57,14 +57,7 @@ SurfaceHandlerBinding::initHybrid( jni::alias_ref, jint surfaceId, jni::alias_ref moduleName) { - auto env = jni::Environment::current(); - - const char *moduleNameValue = - env->GetStringUTFChars(moduleName.get(), JNI_FALSE); - auto instance = makeCxxInstance(surfaceId, moduleNameValue); - env->ReleaseStringUTFChars(moduleName.get(), moduleNameValue); - - return instance; + return makeCxxInstance(surfaceId, moduleName->toStdString()); } void SurfaceHandlerBinding::setLayoutConstraints(