Index: src/heap-inl.h |
diff --git a/src/heap-inl.h b/src/heap-inl.h |
index ad6f44f935f1af9349d99f0cc670017a3cd7f192..55b8d17300ad341334b5081f85490e774d9e9e91 100644 |
--- a/src/heap-inl.h |
+++ b/src/heap-inl.h |
@@ -217,10 +217,6 @@ MaybeObject* Heap::AllocateRaw(int size_in_bytes, |
ASSERT(AllowHandleAllocation::IsAllowed()); |
ASSERT(AllowHeapAllocation::IsAllowed()); |
ASSERT(gc_state_ == NOT_IN_GC); |
- ASSERT(space != NEW_SPACE || |
- retry_space == OLD_POINTER_SPACE || |
- retry_space == OLD_DATA_SPACE || |
- retry_space == LO_SPACE); |
#ifdef DEBUG |
if (FLAG_gc_interval >= 0 && |
!disallow_allocation_failure_ && |
@@ -233,7 +229,7 @@ MaybeObject* Heap::AllocateRaw(int size_in_bytes, |
MaybeObject* result; |
if (NEW_SPACE == space) { |
result = new_space_.AllocateRaw(size_in_bytes); |
- if (always_allocate() && result->IsFailure()) { |
+ if (always_allocate() && result->IsFailure() && retry_space != NEW_SPACE) { |
space = retry_space; |
} else { |
return result; |