Index: src/heap/spaces.cc |
diff --git a/src/heap/spaces.cc b/src/heap/spaces.cc |
index 13622d6e046e59adf3ae13b15af36f757eb4e0d9..bff0a7edf7769f2f9f5b8d952c45488ad6d7f145 100644 |
--- a/src/heap/spaces.cc |
+++ b/src/heap/spaces.cc |
@@ -520,6 +520,7 @@ MemoryChunk* MemoryChunk::Initialize(Heap* heap, Address base, size_t size, |
Bitmap::Clear(chunk); |
chunk->set_next_chunk(nullptr); |
chunk->set_prev_chunk(nullptr); |
+ chunk->local_tracker_ = nullptr; |
DCHECK(OFFSET_OF(MemoryChunk, flags_) == kFlagsOffset); |
DCHECK(OFFSET_OF(MemoryChunk, live_byte_count_) == kLiveBytesOffset); |
@@ -1042,6 +1043,11 @@ void MemoryChunk::ReleaseAllocatedMemory() { |
} |
if (old_to_new_slots_ != nullptr) ReleaseOldToNewSlots(); |
if (old_to_old_slots_ != nullptr) ReleaseOldToOldSlots(); |
+ |
+ if (local_tracker_ != nullptr) { |
+ delete local_tracker_; |
+ local_tracker_ = nullptr; |
+ } |
} |
static SlotSet* AllocateSlotSet(size_t size, Address page_start) { |