From 128bae45148bbd9cdc896df656d9c0f2fbb4fece Mon Sep 17 00:00:00 2001 From: xliu Date: Wed, 13 Oct 2021 10:02:31 +0800 Subject: [PATCH] fixed napi_get_value_string_utf8 in ark Signed-off-by: xliu --- native_engine/impl/ark/native_value/ark_native_string.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/native_engine/impl/ark/native_value/ark_native_string.cpp b/native_engine/impl/ark/native_value/ark_native_string.cpp index e519709..c20fb3e 100644 --- a/native_engine/impl/ark/native_value/ark_native_string.cpp +++ b/native_engine/impl/ark/native_value/ark_native_string.cpp @@ -45,9 +45,9 @@ void ArkNativeString::GetCString(char* buffer, size_t size, size_t* length) LocalScope scope(vm); Global val = value_; if (buffer == nullptr) { - *length = val->Length(); + *length = val->Utf8Length() - 1; } else if (size != 0) { - int copied = val->WriteUtf8(buffer, size) - 1; + int copied = val->WriteUtf8(buffer, val->Utf8Length()); buffer[copied] = '\0'; *length = copied; } else { @@ -86,7 +86,7 @@ size_t ArkNativeString::EncodeWriteUtf8(char* buffer, size_t bufferSize, int32_t break; } - str->WriteUtf8((buffer + pos), writableSize); + str->WriteUtf8((buffer + pos), str->Utf8Length()); writableSize -= len; pos += len; }