LibGfx: Handle OOM slightly better

When create_with_shared_buffer() is called in the next line, the
RefPtr::operator* asserts that the RefPtr is not null. That can happen when
we're low-ish on memory, and the image is huge.
This commit is contained in:
Ben Wiederhake 2020-12-05 20:43:19 +01:00 committed by Andreas Kling
parent 31a3ed70f0
commit ecb16f421d
Notes: sideshowbarker 2024-07-19 01:02:33 +09:00

View file

@ -345,6 +345,8 @@ RefPtr<Bitmap> Bitmap::to_bitmap_backed_by_shared_buffer() const
if (m_shared_buffer)
return *this;
auto buffer = SharedBuffer::create_with_size(size_in_bytes());
if (!buffer)
return nullptr;
auto bitmap = Bitmap::create_with_shared_buffer(m_format, *buffer, m_size, palette_to_vector());
if (!bitmap)
return nullptr;