diff options
| author | 2016-02-02 20:22:47 +0000 | |
|---|---|---|
| committer | 2016-02-02 20:22:47 +0000 | |
| commit | a89d6d630b6fdb591d3dce536f8bca35deae307e (patch) | |
| tree | dbc55a834cbc60e5251884bc0901cd285b536561 /runtime/gc/reference_processor.cc | |
| parent | 1ef02af31d5936a59ddeb762cb3cf767b599787a (diff) | |
| parent | c4695dfdab80c280c98a89c20e027a3804191585 (diff) | |
Merge "Always use pendingNext to test enqueability of references."
Diffstat (limited to 'runtime/gc/reference_processor.cc')
| -rw-r--r-- | runtime/gc/reference_processor.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/gc/reference_processor.cc b/runtime/gc/reference_processor.cc index 8356814354..e172f85b19 100644 --- a/runtime/gc/reference_processor.cc +++ b/runtime/gc/reference_processor.cc @@ -93,7 +93,7 @@ mirror::Object* ReferenceProcessor::GetReferent(Thread* self, mirror::Reference* // in the heap causing corruption since this field would get swept. if (collector_->IsMarkedHeapReference(referent_addr)) { if (!preserving_references_ || - (LIKELY(!reference->IsFinalizerReferenceInstance()) && !reference->IsEnqueued())) { + (LIKELY(!reference->IsFinalizerReferenceInstance()) && reference->IsUnprocessed())) { return referent_addr->AsMirrorPtr(); } } @@ -275,7 +275,7 @@ bool ReferenceProcessor::MakeCircularListIfUnenqueued(mirror::FinalizerReference // GC queues, but since we hold the lock finalizer_reference_queue_ lock it also prevents this // race. MutexLock mu2(self, *Locks::reference_queue_finalizer_references_lock_); - if (!reference->IsEnqueued()) { + if (reference->IsUnprocessed()) { CHECK(reference->IsFinalizerReferenceInstance()); reference->SetPendingNext(reference); return true; |