diff options
Diffstat (limited to 'src/video_core/buffer_cache')
| -rw-r--r-- | src/video_core/buffer_cache/buffer_cache.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 792c3820a..fa26eb8b0 100644 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h | |||
| @@ -1661,6 +1661,7 @@ bool BufferCache<P>::InlineMemory(VAddr dest_address, size_t copy_size, | |||
| 1661 | 1661 | ||
| 1662 | const IntervalType subtract_interval{dest_address, dest_address + copy_size}; | 1662 | const IntervalType subtract_interval{dest_address, dest_address + copy_size}; |
| 1663 | ClearDownload(subtract_interval); | 1663 | ClearDownload(subtract_interval); |
| 1664 | common_ranges.subtract(subtract_interval); | ||
| 1664 | 1665 | ||
| 1665 | BufferId buffer_id = FindBuffer(dest_address, static_cast<u32>(copy_size)); | 1666 | BufferId buffer_id = FindBuffer(dest_address, static_cast<u32>(copy_size)); |
| 1666 | auto& buffer = slot_buffers[buffer_id]; | 1667 | auto& buffer = slot_buffers[buffer_id]; |
| @@ -1677,7 +1678,7 @@ bool BufferCache<P>::InlineMemory(VAddr dest_address, size_t copy_size, | |||
| 1677 | std::memcpy(src_pointer, inlined_buffer.data(), copy_size); | 1678 | std::memcpy(src_pointer, inlined_buffer.data(), copy_size); |
| 1678 | runtime.CopyBuffer(buffer, upload_staging.buffer, copies); | 1679 | runtime.CopyBuffer(buffer, upload_staging.buffer, copies); |
| 1679 | } else { | 1680 | } else { |
| 1680 | buffer.ImmediateUpload(buffer.Offset(dest_address), inlined_buffer); | 1681 | buffer.ImmediateUpload(buffer.Offset(dest_address), inlined_buffer.first(copy_size)); |
| 1681 | } | 1682 | } |
| 1682 | 1683 | ||
| 1683 | return true; | 1684 | return true; |