Index: src/heap-snapshot-generator.cc |
diff --git a/src/heap-snapshot-generator.cc b/src/heap-snapshot-generator.cc |
index 35cfcb4f68592c138b30b24c836aa490da4a7c09..8c8182e8dba617423c1cfa1e2d82b4e52749948a 100644 |
--- a/src/heap-snapshot-generator.cc |
+++ b/src/heap-snapshot-generator.cc |
@@ -1130,6 +1130,18 @@ void V8HeapExplorer::ExtractJSObjectReferences( |
SetInternalReference(global_obj, entry, |
"global_receiver", global_obj->global_receiver(), |
GlobalObject::kGlobalReceiverOffset); |
+ } else if (obj->IsJSArrayBufferView()) { |
+ JSArrayBufferView* view = JSArrayBufferView::cast(obj); |
+ SetInternalReference(view, entry, "buffer", view->buffer(), |
+ JSArrayBufferView::kBufferOffset); |
+ SetWeakReference(view, entry, 1, view->weak_next(), |
+ JSArrayBufferView::kWeakNextOffset); |
+ } else if (obj->IsJSArrayBuffer()) { |
+ JSArrayBuffer* buffer = JSArrayBuffer::cast(obj); |
+ SetWeakReference(buffer, entry, 1, buffer->weak_next(), |
+ JSArrayBuffer::kWeakNextOffset); |
+ SetWeakReference(buffer, entry, 2, buffer->weak_first_view(), |
+ JSArrayBuffer::kWeakFirstViewOffset); |
} |
TagObject(js_obj->properties(), "(object properties)"); |
SetInternalReference(obj, entry, |