diff options
Diffstat (limited to 'source/ByteBuffer.cpp')
-rw-r--r-- | source/ByteBuffer.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/ByteBuffer.cpp b/source/ByteBuffer.cpp index 912f562f0..c1ff4c6fd 100644 --- a/source/ByteBuffer.cpp +++ b/source/ByteBuffer.cpp @@ -354,7 +354,8 @@ bool cByteBuffer::ReadBuf(void * a_Buffer, int a_Count) NEEDBYTES(a_Count);
char * Dst = (char *)a_Buffer; // So that we can do byte math
int BytesToEndOfBuffer = m_BufferSize - m_ReadPos;
- if (BytesToEndOfBuffer < a_Count)
+ ASSERT(BytesToEndOfBuffer >= 0); // Sanity check
+ if ((BytesToEndOfBuffer > 0) && (BytesToEndOfBuffer < a_Count))
{
// Reading across the ringbuffer end, read the first part and adjust parameters:
memcpy(Dst, m_Buffer + m_ReadPos, BytesToEndOfBuffer);
|