Index: src/spaces.cc |
diff --git a/src/spaces.cc b/src/spaces.cc |
index 1fbad551aff63992553b1161e99aaf8fc854a602..d7061a1a7929c7cbd75b000700f980453f447713 100644 |
--- a/src/spaces.cc |
+++ b/src/spaces.cc |
@@ -2217,7 +2217,9 @@ bool PagedSpace::ReserveSpace(int size_in_bytes) { |
// You have to call this last, since the implementation from PagedSpace |
// doesn't know that memory was 'promised' to large object space. |
bool LargeObjectSpace::ReserveSpace(int bytes) { |
- return heap()->OldGenerationSpaceAvailable() >= bytes; |
+ return heap()->OldGenerationCapacityAvailable() >= bytes && |
+ (!heap()->incremental_marking()->IsStopped() || |
+ heap()->OldGenerationSpaceAvailable() >= bytes); |
} |