| Index: src/heap/heap.cc
 | 
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc
 | 
| index 46f62f001d4f2da005586b16de92b8191520458a..945add8e95d370444b1882e9fe4f97ca599e7955 100644
 | 
| --- a/src/heap/heap.cc
 | 
| +++ b/src/heap/heap.cc
 | 
| @@ -1382,6 +1382,8 @@ void Heap::CallGCEpilogueCallbacks(GCType gc_type,
 | 
|  
 | 
|  
 | 
|  void Heap::MarkCompact() {
 | 
| +  PauseInlineAllocationObserversScope pause_observers(new_space());
 | 
| +
 | 
|    gc_state_ = MARK_COMPACT;
 | 
|    LOG(isolate_, ResourceEvent("markcompact", "begin"));
 | 
|  
 | 
| @@ -1586,7 +1588,7 @@ void Heap::Scavenge() {
 | 
|  
 | 
|    // Bump-pointer allocations done during scavenge are not real allocations.
 | 
|    // Pause the inline allocation steps.
 | 
| -  new_space()->PauseInlineAllocationObservers();
 | 
| +  PauseInlineAllocationObserversScope pause_observers(new_space());
 | 
|  
 | 
|  #ifdef VERIFY_HEAP
 | 
|    if (FLAG_verify_heap) VerifyNonPointerSpacePointers(this);
 | 
| @@ -1717,8 +1719,6 @@ void Heap::Scavenge() {
 | 
|    // Set age mark.
 | 
|    new_space_.set_age_mark(new_space_.top());
 | 
|  
 | 
| -  new_space()->ResumeInlineAllocationObservers();
 | 
| -
 | 
|    array_buffer_tracker()->FreeDead(true);
 | 
|  
 | 
|    // Update how much has survived scavenge.
 | 
| 
 |