diff options
| -rw-r--r-- | runtime/debugger.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/runtime/debugger.cc b/runtime/debugger.cc index a5b0689473..8009b1b108 100644 --- a/runtime/debugger.cc +++ b/runtime/debugger.cc @@ -4058,7 +4058,7 @@ void Dbg::ExecuteMethodWithoutPendingException(ScopedObjectAccess& soa, DebugInv // Prepare JDWP ids for the reply. JDWP::JdwpTag result_tag = BasicTagFromDescriptor(m->GetShorty()); const bool is_object_result = (result_tag == JDWP::JT_OBJECT); - StackHandleScope<3> hs(soa.Self()); + StackHandleScope<2> hs(soa.Self()); Handle<mirror::Object> object_result = hs.NewHandle(is_object_result ? result.GetL() : nullptr); Handle<mirror::Throwable> exception = hs.NewHandle(soa.Self()->GetException()); soa.Self()->ClearException(); @@ -4099,9 +4099,9 @@ void Dbg::ExecuteMethodWithoutPendingException(ScopedObjectAccess& soa, DebugInv if (exceptionObjectId == 0) { if (m->GetDeclaringClass()->IsStringClass()) { // For string constructors, the new string is remapped to the receiver (stored in ref). - Handle<mirror::Object> decoded_ref = hs.NewHandle(soa.Self()->DecodeJObject(ref.get())); + mirror::Object* decoded_ref = soa.Self()->DecodeJObject(ref.get()); result_value = gRegistry->Add(decoded_ref); - result_tag = TagFromObject(soa, decoded_ref.Get()); + result_tag = TagFromObject(soa, decoded_ref); } else { // TODO we could keep the receiver ObjectId in the DebugInvokeReq to avoid looking into the // object registry. |