summaryrefslogtreecommitdiff
path: root/runtime/native/java_lang_String.cc
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2019-05-28 16:39:29 +0100
committer Vladimir Marko <vmarko@google.com> 2019-05-31 14:15:59 +0000
commit3068d582eff4552ff260d7966fcbdc93e17d0207 (patch)
treebc894a414070a06ea2a231fb98607b57b8c3b0cb /runtime/native/java_lang_String.cc
parent991cd5cc16267b74e390f640eb441102062babb6 (diff)
Clean up creating handles from `this`.
Make these member functions static and take an additional parameter `Handle<.> h_this`. Callers mostly already have a Handle<> to pass, so we avoid an extra StackHandleScope. This pattern was already used for some functions. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing --interpreter Change-Id: I4f4478b0526bcb2f3c23305d3b3cc4a65fff9ff5
Diffstat (limited to 'runtime/native/java_lang_String.cc')
-rw-r--r--runtime/native/java_lang_String.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/runtime/native/java_lang_String.cc b/runtime/native/java_lang_String.cc
index 2d9e7dc55d..7c7c5537fb 100644
--- a/runtime/native/java_lang_String.cc
+++ b/runtime/native/java_lang_String.cc
@@ -105,8 +105,9 @@ static jstring String_doReplace(JNIEnv* env, jobject java_this, jchar old_c, jch
static jcharArray String_toCharArray(JNIEnv* env, jobject java_this) {
ScopedFastNativeObjectAccess soa(env);
- ObjPtr<mirror::String> s = soa.Decode<mirror::String>(java_this);
- return soa.AddLocalReference<jcharArray>(s->ToCharArray(soa.Self()));
+ StackHandleScope<1u> hs(soa.Self());
+ Handle<mirror::String> s = hs.NewHandle(soa.Decode<mirror::String>(java_this));
+ return soa.AddLocalReference<jcharArray>(mirror::String::ToCharArray(s, soa.Self()));
}
static JNINativeMethod gMethods[] = {