| Index: runtime/vm/verifier.cc
 | 
| diff --git a/runtime/vm/verifier.cc b/runtime/vm/verifier.cc
 | 
| index adb53fa8df6176be2bef0f246d64c2c0eb2964d9..6aa7bd52bad93339e05b204e8b2cf53399199051 100644
 | 
| --- a/runtime/vm/verifier.cc
 | 
| +++ b/runtime/vm/verifier.cc
 | 
| @@ -41,7 +41,8 @@ void VerifyPointersVisitor::VisitPointers(RawObject** first, RawObject** last) {
 | 
|  
 | 
|  
 | 
|  void VerifyWeakPointersVisitor::VisitHandle(uword addr) {
 | 
| -  WeakPersistentHandle* handle = reinterpret_cast<WeakPersistentHandle*>(addr);
 | 
| +  FinalizablePersistentHandle* handle =
 | 
| +      reinterpret_cast<FinalizablePersistentHandle*>(addr);
 | 
|    RawObject* raw_obj = handle->raw();
 | 
|    visitor_->VisitPointer(&raw_obj);
 | 
|  }
 | 
| @@ -51,10 +52,14 @@ void VerifyPointersVisitor::VerifyPointers() {
 | 
|    NoGCScope no_gc;
 | 
|    Isolate* isolate = Isolate::Current();
 | 
|    VerifyPointersVisitor visitor;
 | 
| +  // Visit all strongly reachable objects.
 | 
|    isolate->VisitObjectPointers(&visitor,
 | 
| +                               false,  // skip prologue weak handles
 | 
|                                 StackFrameIterator::kValidateFrames);
 | 
|    VerifyWeakPointersVisitor weak_visitor(&visitor);
 | 
| -  isolate->VisitWeakPersistentHandles(&weak_visitor);
 | 
| +  // Visit weak handles and prologue weak handles.
 | 
| +  isolate->VisitWeakPersistentHandles(&weak_visitor,
 | 
| +                                      true);  // visit prologue weak handles
 | 
|  }
 | 
|  
 | 
|  }  // namespace dart
 | 
| 
 |