diff options
| author | Dan Engelbrecht <[email protected]> | 2024-01-22 10:33:15 +0100 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-01-22 10:33:15 +0100 |
| commit | 884e51fea604dcdba95d13dfdd9f4ad108d0521a (patch) | |
| tree | 18362159d6b38ffe5f8988dc18f7e5703cd30d0a /src/zenutil/basicfile.cpp | |
| parent | Use correct HTTP range values. (#632) (diff) | |
| download | zen-884e51fea604dcdba95d13dfdd9f4ad108d0521a.tar.xz zen-884e51fea604dcdba95d13dfdd9f4ad108d0521a.zip | |
make sure to advance read buffer pointer in BasicFileWriter::Write (#633)
Diffstat (limited to 'src/zenutil/basicfile.cpp')
| -rw-r--r-- | src/zenutil/basicfile.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/zenutil/basicfile.cpp b/src/zenutil/basicfile.cpp index 819d0805d..dbae76717 100644 --- a/src/zenutil/basicfile.cpp +++ b/src/zenutil/basicfile.cpp @@ -712,6 +712,7 @@ BasicFileWriter::Write(void* Data, uint64_t Size, uint64_t FileOffset) m_BufferStart = m_BufferEnd = FileOffset; } + const uint8_t* DataPtr = (const uint8_t*)Data; while (Size) { const uint64_t RemainingBufferCapacity = m_BufferStart + m_BufferSize - m_BufferEnd; @@ -721,11 +722,12 @@ BasicFileWriter::Write(void* Data, uint64_t Size, uint64_t FileOffset) ZEN_ASSERT_SLOW(BufferWriteOffset < m_BufferSize); ZEN_ASSERT_SLOW((BufferWriteOffset + BlockWriteBytes) <= m_BufferSize); - memcpy(m_Buffer + BufferWriteOffset, Data, BlockWriteBytes); + memcpy(m_Buffer + BufferWriteOffset, DataPtr, BlockWriteBytes); Size -= BlockWriteBytes; m_BufferEnd += BlockWriteBytes; FileOffset += BlockWriteBytes; + DataPtr += BlockWriteBytes; if ((m_BufferEnd - m_BufferStart) == m_BufferSize) { |