From fbb864a0b5cd68318ec2f18b32bb9b4e6fd377b3 Mon Sep 17 00:00:00 2001 From: Jordan Woyak Date: Sat, 1 Nov 2025 17:26:20 -0500 Subject: [PATCH] MemArena/LazyMemoryRegion: Add EnsureMemoryPagesWritable function to ensure a region of bytes is writable without the caller needing to be aware of the windows-only BLOCK_SIZE value. --- Source/Core/Common/MemArena.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Source/Core/Common/MemArena.h b/Source/Core/Common/MemArena.h index d9d472079c..dd07f70398 100644 --- a/Source/Core/Common/MemArena.h +++ b/Source/Core/Common/MemArena.h @@ -187,6 +187,14 @@ public: #endif } + void EnsureMemoryPagesWritable(size_t offset, size_t size) + { +#ifdef _WIN32 + for (const auto end_offset = offset + size; offset < end_offset; offset += BLOCK_SIZE) + EnsureMemoryPageWritable(offset); +#endif + } + private: void* m_memory = nullptr; size_t m_size = 0;