From 728fd42caa8387fa80d48346858d1e8735f2201c Mon Sep 17 00:00:00 2001 From: Alexander Perfilyev Date: Wed, 4 Mar 2026 17:28:43 +0300 Subject: [PATCH] Use JS_ToCStringLen to return the length directly via an output parameter (#1787) --- zipline/native/Context.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zipline/native/Context.cpp b/zipline/native/Context.cpp index a61c25c4a..4c82811e6 100644 --- a/zipline/native/Context.cpp +++ b/zipline/native/Context.cpp @@ -504,8 +504,8 @@ JSValue Context::toJsString(JNIEnv* env, jstring javaString) const { * contain non-ASCII characters because that function expects modified UTF-8. */ jstring Context::toJavaString(JNIEnv* env, const JSValueConst& value) const { - const char* string = JS_ToCString(jsContext, value); - size_t utf8Length = strlen(string); + size_t utf8Length; + const char* string = JS_ToCStringLen(jsContext, &utf8Length, value); jbyteArray utf8BytesObject = env->NewByteArray(utf8Length); jbyte* utf8Bytes = env->GetByteArrayElements(utf8BytesObject, NULL); std::copy(string, string + utf8Length, utf8Bytes);