diff --git a/src/common/host_memory.cpp b/src/common/host_memory.cpp index 5400b97018..ff7859a1f7 100644 --- a/src/common/host_memory.cpp +++ b/src/common/host_memory.cpp @@ -730,7 +730,9 @@ void HostMemory::Map(size_t virtual_offset, size_t host_offset, size_t length, ASSERT(virtual_offset % PageAlignment == 0); ASSERT(host_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); - ASSERT(virtual_offset + length <= virtual_size); + if (impl && virtual_base) { + ASSERT(virtual_offset + length <= virtual_size); + } ASSERT(host_offset + length <= backing_size); if (length == 0 || !virtual_base || !impl) { return; @@ -741,7 +743,9 @@ void HostMemory::Map(size_t virtual_offset, size_t host_offset, size_t length, void HostMemory::Unmap(size_t virtual_offset, size_t length, bool separate_heap) { ASSERT(virtual_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); - ASSERT(virtual_offset + length <= virtual_size); + if (impl && virtual_base) { + ASSERT(virtual_offset + length <= virtual_size); + } if (length == 0 || !virtual_base || !impl) { return; } @@ -751,7 +755,9 @@ void HostMemory::Unmap(size_t virtual_offset, size_t length, bool separate_heap) void HostMemory::Protect(size_t virtual_offset, size_t length, MemoryPermission perm) { ASSERT(virtual_offset % PageAlignment == 0); ASSERT(length % PageAlignment == 0); - ASSERT(virtual_offset + length <= virtual_size); + if (impl && virtual_base) { + ASSERT(virtual_offset + length <= virtual_size); + } if (length == 0 || !virtual_base || !impl) { return; }