|
|
@@ -401,7 +401,7 @@ namespace bx
|
|
|
}
|
|
|
|
|
|
int64_t remainder = m_top-m_pos;
|
|
|
- int32_t size = uint32_min(_size, int32_t(remainder > INT32_MAX ? INT32_MAX : remainder) );
|
|
|
+ int32_t size = uint32_min(_size, uint32_t(int64_min(remainder, INT32_MAX) ) );
|
|
|
m_pos += size;
|
|
|
if (size != _size)
|
|
|
{
|
|
|
@@ -454,7 +454,7 @@ namespace bx
|
|
|
BX_CHECK(NULL != _err, "Reader/Writer interface calling functions must handle errors.");
|
|
|
|
|
|
int64_t remainder = m_top-m_pos;
|
|
|
- int32_t size = uint32_min(_size, int32_t(remainder > INT32_MAX ? INT32_MAX : remainder) );
|
|
|
+ int32_t size = uint32_min(_size, uint32_t(int64_min(remainder, INT32_MAX) ) );
|
|
|
memcpy(_data, &m_data[m_pos], size);
|
|
|
m_pos += size;
|
|
|
if (size != _size)
|
|
|
@@ -535,7 +535,7 @@ namespace bx
|
|
|
}
|
|
|
|
|
|
int64_t remainder = m_size-m_pos;
|
|
|
- int32_t size = uint32_min(_size, int32_t(remainder > INT32_MAX ? INT32_MAX : remainder) );
|
|
|
+ int32_t size = uint32_min(_size, uint32_t(int64_min(remainder, INT32_MAX) ) );
|
|
|
memcpy(&m_data[m_pos], _data, size);
|
|
|
m_pos += size;
|
|
|
m_top = int64_max(m_top, m_pos);
|