Add ScopedThreadSuspension
Fixes the TransitionFromRunnableToSuspended and
TransitionFromSuspendedToRunnable pattern that was prone to errors.
Change-Id: Ie6ae9c0357c83b4fc4899d05dfa0975553170267
diff --git a/runtime/jdwp/jdwp_main.cc b/runtime/jdwp/jdwp_main.cc
index 1139a1e..668d5dc 100644
--- a/runtime/jdwp/jdwp_main.cc
+++ b/runtime/jdwp/jdwp_main.cc
@@ -536,9 +536,8 @@
ddm_is_active_ = false;
/* broadcast the disconnect; must be in RUNNING state */
- thread_->TransitionFromSuspendedToRunnable();
+ ScopedObjectAccess soa(thread_);
Dbg::DdmDisconnected();
- thread_->TransitionFromRunnableToSuspended(kWaitingInMainDebuggerLoop);
}
{