diff options
| author | bunnei <bunneidev@gmail.com> | 2018-11-23 12:58:55 -0500 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2018-11-23 12:58:55 -0500 |
| commit | 0b1842294f5f43ea2ee42bb8afd26e57c9250f4b (patch) | |
| tree | 97507dc052dbec1891184e512a666a791c89b633 /src/video_core/memory_manager.h | |
| parent | c267aea29b23f52add7c36578e55312b70480947 (diff) | |
memory_manager: Do not allow 0 to be a valid GPUVAddr.
- Fixes a bug with Undertale using 0 for a render target.
Diffstat (limited to 'src/video_core/memory_manager.h')
| -rw-r--r-- | src/video_core/memory_manager.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/video_core/memory_manager.h b/src/video_core/memory_manager.h index 4eb338aa2..fb03497ca 100644 --- a/src/video_core/memory_manager.h +++ b/src/video_core/memory_manager.h @@ -18,7 +18,7 @@ using GPUVAddr = u64; class MemoryManager final { public: - MemoryManager() = default; + MemoryManager(); GPUVAddr AllocateSpace(u64 size, u64 align); GPUVAddr AllocateSpace(GPUVAddr gpu_addr, u64 size, u64 align); @@ -37,6 +37,7 @@ private: enum class PageStatus : u64 { Unmapped = 0xFFFFFFFFFFFFFFFFULL, Allocated = 0xFFFFFFFFFFFFFFFEULL, + Reserved = 0xFFFFFFFFFFFFFFFDULL, }; std::optional<GPUVAddr> FindFreeBlock(GPUVAddr region_start, u64 size, u64 align, |
