| Index: src/serialize.cc
|
| diff --git a/src/serialize.cc b/src/serialize.cc
|
| index e3a84c8c9d3b42e3c18fd87e07a62ed41464af18..d0a1a639f355d88797e3f796a9d424767d2754aa 100644
|
| --- a/src/serialize.cc
|
| +++ b/src/serialize.cc
|
| @@ -669,6 +669,14 @@ void Deserializer::Deserialize() {
|
|
|
| isolate_->heap()->set_global_contexts_list(
|
| isolate_->heap()->undefined_value());
|
| +
|
| + // Update data pointers to the external strings containing natives sources.
|
| + for (int i = 0; i < Natives::GetBuiltinsCount(); i++) {
|
| + Object* source = isolate_->heap()->natives_source_cache()->get(i);
|
| + if (!source->IsUndefined()) {
|
| + ExternalAsciiString::cast(source)->update_data_cache();
|
| + }
|
| + }
|
| }
|
|
|
|
|
| @@ -1564,7 +1572,6 @@ void Serializer::ObjectSerializer::VisitExternalAsciiString(
|
| sink_->Put(kNativesStringResource, "NativesStringResource");
|
| sink_->PutSection(i, "NativesStringResourceEnd");
|
| bytes_processed_so_far_ += sizeof(resource);
|
| - string->clear_data_cache();
|
| return;
|
| }
|
| }
|
|
|