| Index: src/snapshot/deserializer.cc
|
| diff --git a/src/snapshot/deserializer.cc b/src/snapshot/deserializer.cc
|
| index aabd806b7add6e341dbce8ec86da8ae6b39f0d1e..45909a0e5ae4b5aba799f38910e059fee287590f 100644
|
| --- a/src/snapshot/deserializer.cc
|
| +++ b/src/snapshot/deserializer.cc
|
| @@ -93,6 +93,7 @@ void Deserializer::Deserialize(Isolate* isolate) {
|
| isolate_->heap()->IterateWeakRoots(this, VISIT_ALL);
|
| DeserializeDeferredObjects();
|
| FlushICacheForNewIsolate();
|
| + RestoreExternalReferenceRedirectors(&accessor_infos_);
|
| }
|
|
|
| isolate_->heap()->set_native_contexts_list(
|
| @@ -316,6 +317,10 @@ HeapObject* Deserializer::PostProcessNewObject(HeapObject* obj, int space) {
|
| if (deserializing_user_code() || space == LO_SPACE) {
|
| new_code_objects_.Add(Code::cast(obj));
|
| }
|
| + } else if (obj->IsAccessorInfo()) {
|
| + if (isolate_->external_reference_redirector()) {
|
| + accessor_infos_.Add(AccessorInfo::cast(obj));
|
| + }
|
| }
|
| // Check alignment.
|
| DCHECK_EQ(0, Heap::GetFillToAlign(obj->address(), obj->RequiredAlignment()));
|
|
|