summaryrefslogtreecommitdiff
path: root/runtime/java_vm_ext.cc
diff options
context:
space:
mode:
author Mathieu Chartier <mathieuc@google.com> 2015-09-03 16:13:34 -0700
committer Mathieu Chartier <mathieuc@google.com> 2015-09-03 17:33:19 -0700
commitf1d666e1b48f8070ef1177fce156c08827f08eb8 (patch)
tree772cbbe6652b32ea2be31532156295db27579390 /runtime/java_vm_ext.cc
parent897ce64153e4758663e464fb5fb339f9a7b496c8 (diff)
Add ScopedThreadSuspension
Fixes the TransitionFromRunnableToSuspended and TransitionFromSuspendedToRunnable pattern that was prone to errors. Change-Id: Ie6ae9c0357c83b4fc4899d05dfa0975553170267
Diffstat (limited to 'runtime/java_vm_ext.cc')
-rw-r--r--runtime/java_vm_ext.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/java_vm_ext.cc b/runtime/java_vm_ext.cc
index b1c5cf0465..1e8326b751 100644
--- a/runtime/java_vm_ext.cc
+++ b/runtime/java_vm_ext.cc
@@ -406,9 +406,9 @@ void JavaVMExt::JniAbort(const char* jni_function_name, const char* msg) {
check_jni_abort_hook_(check_jni_abort_hook_data_, os.str());
} else {
// Ensure that we get a native stack trace for this thread.
- self->TransitionFromRunnableToSuspended(kNative);
+ ScopedThreadSuspension sts(self, kNative);
LOG(FATAL) << os.str();
- self->TransitionFromSuspendedToRunnable(); // Unreachable, keep annotalysis happy.
+ UNREACHABLE();
}
}