diff options
author | 2015-03-05 10:40:17 +0000 | |
---|---|---|
committer | 2015-03-09 10:09:33 +0000 | |
commit | 14691c5e786e8c2c5734f687e4c96217340771be (patch) | |
tree | 7c2156671b323c70ffdd1d48d5e2f1d1de79c5fc /runtime/interpreter/interpreter_switch_impl.cc | |
parent | 3d7d2af4c6502b771b032ee9bf3ab30e78f9c60d (diff) |
Compute the right catch location for the debugger.
Also remove tls ThrowLocation, it is not needed anymore.
Change-Id: I78fddf09ce968ca475e39c17fa76d699c589c8d9
Diffstat (limited to 'runtime/interpreter/interpreter_switch_impl.cc')
-rw-r--r-- | runtime/interpreter/interpreter_switch_impl.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/interpreter/interpreter_switch_impl.cc b/runtime/interpreter/interpreter_switch_impl.cc index 2f85587604..dceed47169 100644 --- a/runtime/interpreter/interpreter_switch_impl.cc +++ b/runtime/interpreter/interpreter_switch_impl.cc @@ -163,7 +163,7 @@ JValue ExecuteSwitchImpl(Thread* self, const DexFile::CodeItem* code_item, break; case Instruction::MOVE_EXCEPTION: { PREAMBLE(); - Throwable* exception = self->GetException(nullptr); + Throwable* exception = self->GetException(); DCHECK(exception != nullptr) << "No pending exception on MOVE_EXCEPTION instruction"; shadow_frame.SetVRegReference(inst->VRegA_11x(inst_data), exception); self->ClearException(); @@ -515,7 +515,7 @@ JValue ExecuteSwitchImpl(Thread* self, const DexFile::CodeItem* code_item, "Throwing '%s' that is not instance of Throwable", exception->GetClass()->GetDescriptor(&temp)); } else { - self->SetException(shadow_frame.GetCurrentLocationForThrow(), exception->AsThrowable()); + self->SetException(exception->AsThrowable()); } HANDLE_PENDING_EXCEPTION(); break; |