@@ -118,7 +118,7 @@ index 4ba261014695cf1aa8eb53b21a2873f4c4ea8e43..b695d131bcdc331974f544924138bb5e
118118 v8::Local<v8::ArrayBuffer> ToArrayBuffer(Environment* env);
119119
120120diff --git a/src/node_i18n.cc b/src/node_i18n.cc
121- index 2aa7cd98ecc179519a6bb1932dafa86a38bda4f5..ba6d87e4facf595bfdcd897155a35926f8b8db17 100644
121+ index 2aa7cd98ecc179519a6bb1932dafa86a38bda4f5..79376bef2e674f05fd95380dd419e8778cb98623 100644
122122--- a/src/node_i18n.cc
123123+++ b/src/node_i18n.cc
124124@@ -106,7 +106,7 @@ namespace {
@@ -130,6 +130,33 @@ index 2aa7cd98ecc179519a6bb1932dafa86a38bda4f5..ba6d87e4facf595bfdcd897155a35926
130130 if (ret.IsEmpty())
131131 return ret;
132132
133+ @@ -183,7 +183,7 @@ MaybeLocal<Object> TranscodeLatin1ToUcs2(Environment* env,
134+ return {};
135+ }
136+
137+ - return Buffer::New(env, &destbuf);
138+ + return Buffer::Copy(env, reinterpret_cast<char*>(destbuf.out()), destbuf.length() * sizeof(UChar));
139+ }
140+
141+ MaybeLocal<Object> TranscodeFromUcs2(Environment* env,
142+ @@ -228,7 +228,7 @@ MaybeLocal<Object> TranscodeUcs2FromUtf8(Environment* env,
143+ return {};
144+ }
145+
146+ - return Buffer::New(env, &destbuf);
147+ + return Buffer::Copy(env, reinterpret_cast<char*>(destbuf.out()), destbuf.length() * sizeof(UChar));
148+ }
149+
150+ MaybeLocal<Object> TranscodeUtf8FromUcs2(Environment* env,
151+ @@ -252,7 +252,7 @@ MaybeLocal<Object> TranscodeUtf8FromUcs2(Environment* env,
152+ return {};
153+ }
154+
155+ - return Buffer::New(env, &destbuf);
156+ + return Buffer::Copy(env, reinterpret_cast<char*>(destbuf.out()), destbuf.length() * sizeof(char));
157+ }
158+
159+ constexpr const char* EncodingName(const enum encoding encoding) {
133160diff --git a/src/node_internals.h b/src/node_internals.h
134161index 6264f23d54d6028bb0158f12a9296ba67a846358..613300215766aeb108219b0d1c3b95ee02db964f 100644
135162--- a/src/node_internals.h
0 commit comments