summaryrefslogtreecommitdiff
path: root/runtime/thread.cc
diff options
context:
space:
mode:
author Sebastien Hertz <shertz@google.com> 2015-06-12 10:40:56 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2015-06-12 10:40:58 +0000
commit42361f2e8b3601813dc40d12e14c679df99a864b (patch)
treef5a89acb10d76edc7b7d288e934b60f3c1fc6b9a /runtime/thread.cc
parent995f6e23418a1b4058167e64bbe50fd9e5dc7f02 (diff)
parentcbc5064ff05179b97b416f00ca579c55e38cd7d9 (diff)
Merge "JDWP: asynchronous invoke command handling"
Diffstat (limited to 'runtime/thread.cc')
-rw-r--r--runtime/thread.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/runtime/thread.cc b/runtime/thread.cc
index fe98b0a98a..fe8b0d8c60 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -2578,12 +2578,11 @@ void Thread::SetDebugInvokeReq(DebugInvokeReq* req) {
}
void Thread::ClearDebugInvokeReq() {
- CHECK(Dbg::IsDebuggerActive());
CHECK(GetInvokeReq() != nullptr) << "Debug invoke req not active in thread " << *this;
CHECK(Thread::Current() == this) << "Debug invoke must be finished by the thread itself";
- // We do not own the DebugInvokeReq* so we must not delete it, it is the responsibility of
- // the owner (the JDWP thread).
+ DebugInvokeReq* req = tlsPtr_.debug_invoke_req;
tlsPtr_.debug_invoke_req = nullptr;
+ delete req;
}
void Thread::PushVerifier(verifier::MethodVerifier* verifier) {