summaryrefslogtreecommitdiff
path: root/src/video_core
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/buffer_cache/usage_tracker.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/buffer_cache/usage_tracker.h b/src/video_core/buffer_cache/usage_tracker.h
index 5f8688d31..ae511ccb6 100644
--- a/src/video_core/buffer_cache/usage_tracker.h
+++ b/src/video_core/buffer_cache/usage_tracker.h
@@ -26,6 +26,9 @@ public:
26 void Track(u64 offset, u64 size) noexcept { 26 void Track(u64 offset, u64 size) noexcept {
27 const size_t page = offset >> PAGE_SHIFT; 27 const size_t page = offset >> PAGE_SHIFT;
28 const size_t page_end = (offset + size) >> PAGE_SHIFT; 28 const size_t page_end = (offset + size) >> PAGE_SHIFT;
29 if (page_end < page || page_end >= pages.size()) {
30 return;
31 }
29 TrackPage(page, offset, size); 32 TrackPage(page, offset, size);
30 if (page == page_end) { 33 if (page == page_end) {
31 return; 34 return;
@@ -41,6 +44,9 @@ public:
41 [[nodiscard]] bool IsUsed(u64 offset, u64 size) const noexcept { 44 [[nodiscard]] bool IsUsed(u64 offset, u64 size) const noexcept {
42 const size_t page = offset >> PAGE_SHIFT; 45 const size_t page = offset >> PAGE_SHIFT;
43 const size_t page_end = (offset + size) >> PAGE_SHIFT; 46 const size_t page_end = (offset + size) >> PAGE_SHIFT;
47 if (page_end < page || page_end >= pages.size()) {
48 return false;
49 }
44 if (IsPageUsed(page, offset, size)) { 50 if (IsPageUsed(page, offset, size)) {
45 return true; 51 return true;
46 } 52 }