| Index: runtime/vm/thread.cc
|
| diff --git a/runtime/vm/thread.cc b/runtime/vm/thread.cc
|
| index 42df5357d8254b55e7cc496071f723072af84082..d3534af507c72cf44fe3800a27c77b6ecaaeb426 100644
|
| --- a/runtime/vm/thread.cc
|
| +++ b/runtime/vm/thread.cc
|
| @@ -21,6 +21,7 @@
|
| #include "vm/thread_interrupter.h"
|
| #include "vm/thread_registry.h"
|
| #include "vm/timeline.h"
|
| +#include "vm/zone.h"
|
|
|
| namespace dart {
|
|
|
| @@ -423,6 +424,19 @@ uword Thread::GetAndClearInterrupts() {
|
| }
|
|
|
|
|
| +bool Thread::ZoneIsOwnedByThread(Zone* zone) const {
|
| + ASSERT(zone != NULL);
|
| + Zone* current = zone_;
|
| + while (current != NULL) {
|
| + if (current == zone) {
|
| + return true;
|
| + }
|
| + current = current->previous();
|
| + }
|
| + return false;
|
| +}
|
| +
|
| +
|
| void Thread::DeferOOBMessageInterrupts() {
|
| MonitorLocker ml(thread_lock_);
|
| defer_oob_messages_count_++;
|
|
|