@@ -45,7 +45,7 @@ void ArgConverter::NativeScriptLongFunctionCallback(const v8::FunctionCallbackIn
4545{
4646 auto isolate = Isolate::GetCurrent ();
4747 args.This ()->SetHiddenValue (V8StringConstants::GetJavaLong (), Boolean::New (isolate, true ));
48- args.This ()->SetHiddenValue (ConvertToV8String ( V8StringConstants::MARKED_AS_LONG ), args[0 ]);
48+ args.This ()->SetHiddenValue (V8StringConstants::GetMarkedAsLong ( ), args[0 ]);
4949 args.This ()->Set (V8StringConstants::GetValue (), args[0 ]);
5050
5151 args.This ()->SetPrototype (Local<NumberObject>::New (Isolate::GetCurrent (), *NAN_NUMBER_OBJECT));
@@ -163,16 +163,11 @@ Local<String> ArgConverter::jstringToV8String(jstring value)
163163 return Handle<String>();
164164 }
165165
166- jsize utfLength;
167- bool readInBuffer = ReadJStringInBuffer (value, utfLength);
168- if (readInBuffer) {
169- return ConvertToV8String (charBuffer, utfLength);
170- }
171-
172166 JEnv env;
173- const char * chars = env.GetStringUTFChars (value, NULL );
174- auto v8String = ConvertToV8String (chars, utfLength);
175- env.ReleaseStringUTFChars (value, chars);
167+ auto chars = env.GetStringChars (value, NULL );
168+ auto length = env.GetStringLength (value);
169+ auto v8String = ConvertToV8String (chars, length);
170+ env.ReleaseStringChars (value, chars);
176171
177172 return v8String;
178173}
@@ -197,13 +192,7 @@ bool ArgConverter::ReadJStringInBuffer(jstring value, jsize& utfLength) {
197192
198193Handle<String> ArgConverter::jcharToV8String (jchar value)
199194{
200- JEnv env;
201-
202- JniLocalRef str (env.NewString (&value, 1 ));
203- jboolean bol = true ;
204- const char * resP = env.GetStringUTFChars (str, &bol);
205- auto v8String = ConvertToV8String (resP, 1 );
206- env.ReleaseStringUTFChars (str, resP);
195+ auto v8String = ConvertToV8String (&value, 1 );
207196 return v8String;
208197}
209198
0 commit comments