1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 18:57:35 +00:00

AK: Rename the const overload of FixedMemoryStream::bytes()

Due to overload resolutions rules, this simple code provokes a crash:

ReadonlyBytes readonly_bytes{};
FixedMemoryStream stream{readonly_bytes};
ReadonlyBytes give_them_back{stream.bytes()};
    // -> Panics on VERIFY(m_writing_enabled);
    // but this is fine:
auto bytes = static_cast<FixedMemoryStream const&>(*stream).bytes()

If we need to be explicit about it, let's rename the overload instead of
adding that `static_cast`.
This commit is contained in:
Lucas CHOLLET 2023-07-03 13:33:25 -04:00 committed by Sam Atkins
parent 66c9696687
commit 18b7ddd0b5
3 changed files with 3 additions and 3 deletions

View file

@ -59,7 +59,7 @@ public:
DecoderErrorOr<BooleanDecoder> create_range_decoder(size_t size)
{
ReadonlyBytes stream_data = static_cast<FixedMemoryStream const&>(*stream).bytes();
ReadonlyBytes stream_data = stream->readonly_bytes();
auto compressed_header_data = ReadonlyBytes(stream_data.data() + stream->offset(), size);
// 9.2.1: The Boolean decoding process specified in section 9.2.2 is invoked to read a marker syntax element from the