JDWP: fix returned tag for ClassType.NewInstance
Bug: 25490662
Change-Id: I0c369f04342a60caef4f7462005804307a410d18
diff --git a/runtime/debugger.cc b/runtime/debugger.cc
index e523fbb..6e4b7a3 100644
--- a/runtime/debugger.cc
+++ b/runtime/debugger.cc
@@ -4069,13 +4069,15 @@
if (is_constructor) {
// If we invoked a constructor (which actually returns void), return the receiver,
// unless we threw, in which case we return null.
- result_tag = JDWP::JT_OBJECT;
+ DCHECK_EQ(JDWP::JT_VOID, result_tag);
if (exceptionObjectId == 0) {
// TODO we could keep the receiver ObjectId in the DebugInvokeReq to avoid looking into the
// object registry.
result_value = GetObjectRegistry()->Add(pReq->receiver.Read());
+ result_tag = TagFromObject(soa, pReq->receiver.Read());
} else {
result_value = 0;
+ result_tag = JDWP::JT_OBJECT;
}
}