Index: src/serialize.cc |
diff --git a/src/serialize.cc b/src/serialize.cc |
index febb87b60c9bebed6cdcf0cefc3a683bbc94d16a..8d6d5508252450a24ef5810b414fa59f5c66fc84 100644 |
--- a/src/serialize.cc |
+++ b/src/serialize.cc |
@@ -1665,6 +1665,9 @@ void PartialSerializer::SerializeObject(HeapObject* obj, HowToCode how_to_code, |
DCHECK(Map::cast(obj)->code_cache() == obj->GetHeap()->empty_fixed_array()); |
} |
+ // Replace typed arrays by undefined. |
+ if (obj->IsJSTypedArray()) obj = isolate_->heap()->undefined_value(); |
+ |
int root_index = root_index_map_.Lookup(obj); |
if (root_index != RootIndexMap::kInvalidRootIndex) { |
PutRoot(root_index, obj, how_to_code, where_to_point, skip); |
@@ -1832,6 +1835,9 @@ void Serializer::ObjectSerializer::Serialize() { |
PrintF("\n"); |
} |
+ // We cannot serialize typed array objects correctly. |
+ DCHECK(!object_->IsJSTypedArray()); |
+ |
if (object_->IsScript()) { |
// Clear cached line ends. |
Object* undefined = serializer_->isolate()->heap()->undefined_value(); |