summaryrefslogtreecommitdiff
path: root/src/native/java_lang_Thread.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/native/java_lang_Thread.cc')
-rw-r--r--src/native/java_lang_Thread.cc8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/native/java_lang_Thread.cc b/src/native/java_lang_Thread.cc
index adc246aa28..2a6f177ce5 100644
--- a/src/native/java_lang_Thread.cc
+++ b/src/native/java_lang_Thread.cc
@@ -25,8 +25,7 @@
namespace art {
static jobject Thread_currentThread(JNIEnv* env, jclass) {
- ScopedObjectAccess soa(env);
- return soa.AddLocalReference<jobject>(soa.Self()->GetPeer());
+ return reinterpret_cast<JNIEnvExt*>(env)->self->GetPeer();
}
static jboolean Thread_interrupted(JNIEnv* env, jclass) {
@@ -110,9 +109,8 @@ static void Thread_nativeSetName(JNIEnv* env, jobject peer, jstring java_name) {
ScopedUtfChars name(env, java_name);
{
ScopedObjectAccess soa(env);
- Thread* self = Thread::Current();
- if (soa.Decode<Object*>(peer) == self->GetPeer()) {
- self->SetThreadName(name.c_str());
+ if (soa.Env()->IsSameObject(peer, soa.Self()->GetPeer())) {
+ soa.Self()->SetThreadName(name.c_str());
return;
}
}