summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source/ByteBuffer.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/source/ByteBuffer.cpp b/source/ByteBuffer.cpp
index c1ff4c6fd..623b865f4 100644
--- a/source/ByteBuffer.cpp
+++ b/source/ByteBuffer.cpp
@@ -355,12 +355,15 @@ bool cByteBuffer::ReadBuf(void * a_Buffer, int a_Count)
char * Dst = (char *)a_Buffer; // So that we can do byte math
int BytesToEndOfBuffer = m_BufferSize - m_ReadPos;
ASSERT(BytesToEndOfBuffer >= 0); // Sanity check
- if ((BytesToEndOfBuffer > 0) && (BytesToEndOfBuffer < a_Count))
+ if (BytesToEndOfBuffer < a_Count)
{
// Reading across the ringbuffer end, read the first part and adjust parameters:
- memcpy(Dst, m_Buffer + m_ReadPos, BytesToEndOfBuffer);
- Dst += BytesToEndOfBuffer;
- a_Count -= BytesToEndOfBuffer;
+ if (BytesToEndOfBuffer > 0)
+ {
+ memcpy(Dst, m_Buffer + m_ReadPos, BytesToEndOfBuffer);
+ Dst += BytesToEndOfBuffer;
+ a_Count -= BytesToEndOfBuffer;
+ }
m_ReadPos = 0;
}