1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 14:47:44 +00:00

LibCore: Allow MemoryStream::seek to go to EOF

The method still prevents you to go out of bound.
This commit is contained in:
Lucas CHOLLET 2022-10-12 17:07:15 +02:00 committed by Andrew Kaster
parent 706638a0d0
commit db40a514f5

View file

@ -44,19 +44,19 @@ public:
{
switch (seek_mode) {
case SeekMode::SetPosition:
if (offset >= static_cast<i64>(m_bytes.size()))
if (offset > static_cast<i64>(m_bytes.size()))
return Error::from_string_literal("Offset past the end of the stream memory");
m_offset = offset;
break;
case SeekMode::FromCurrentPosition:
if (offset + static_cast<i64>(m_offset) >= static_cast<i64>(m_bytes.size()))
if (offset + static_cast<i64>(m_offset) > static_cast<i64>(m_bytes.size()))
return Error::from_string_literal("Offset past the end of the stream memory");
m_offset += offset;
break;
case SeekMode::FromEndPosition:
if (offset >= static_cast<i64>(m_bytes.size()))
if (offset > static_cast<i64>(m_bytes.size()))
return Error::from_string_literal("Offset past the start of the stream memory");
m_offset = m_bytes.size() - offset;