Index: src/vm/process_handle.h |
diff --git a/src/vm/process_handle.h b/src/vm/process_handle.h |
index db9550c401b00fbb21d4d0c89e24dadfff2a4ccb..322ac639ad4b7b517d8c9017c409425e3ee5cfbe 100644 |
--- a/src/vm/process_handle.h |
+++ b/src/vm/process_handle.h |
@@ -25,15 +25,10 @@ class ProcessHandle : public Refcounted<ProcessHandle> { |
private: |
friend class Process; |
- static void OwnerProcessTerminating(ProcessHandle* handle) { |
- handle->lock()->Lock(); |
- ASSERT(handle->process_ != NULL); |
- handle->process_ = NULL; |
- if (!handle->DecrementRefWithoutDelete()) { |
- handle->lock()->Unlock(); |
kustermann
2015/10/29 11:17:20
The DecrementRefWithoutDelete() & Unlock/Delete is
|
- } else { |
- delete handle; |
- } |
+ void OwnerProcessTerminating() { |
+ ScopedSpinlock locker(&spinlock_); |
+ ASSERT(process_ != NULL); |
+ process_ = NULL; |
} |
Process* process_; |