diff --git a/Userland/Libraries/LibGfx/Bitmap.cpp b/Userland/Libraries/LibGfx/Bitmap.cpp index 73d871f32b..6e22d052d5 100644 --- a/Userland/Libraries/LibGfx/Bitmap.cpp +++ b/Userland/Libraries/LibGfx/Bitmap.cpp @@ -468,8 +468,10 @@ ErrorOr> Bitmap::cropped(Gfx::IntRect crop, Optional< ErrorOr> Bitmap::to_bitmap_backed_by_anonymous_buffer() const { - if (m_buffer.is_valid()) - return NonnullRefPtr { *this }; + if (m_buffer.is_valid()) { + // FIXME: The const_cast here is awkward. + return NonnullRefPtr { const_cast(*this) }; + } auto buffer = TRY(Core::AnonymousBuffer::create_with_size(round_up_to_power_of_two(size_in_bytes(), PAGE_SIZE))); auto bitmap = TRY(Bitmap::create_with_anonymous_buffer(m_format, move(buffer), size(), scale(), palette_to_vector())); memcpy(bitmap->scanline(0), scanline(0), size_in_bytes());