diff --git a/Libraries/LibWeb/Layout/LayoutImage.cpp b/Libraries/LibWeb/Layout/LayoutImage.cpp index de476897ae..dc76527722 100644 --- a/Libraries/LibWeb/Layout/LayoutImage.cpp +++ b/Libraries/LibWeb/Layout/LayoutImage.cpp @@ -115,7 +115,7 @@ void LayoutImage::paint(PaintContext& context, PaintPhase phase) if (alt.is_empty()) alt = image_element.src(); context.painter().draw_text(enclosing_int_rect(absolute_rect()), alt, Gfx::TextAlignment::Center, specified_style().color_or_fallback(CSS::PropertyID::Color, document(), Color::Black), Gfx::TextElision::Right); - } else if (auto* bitmap = m_image_loader.bitmap()) { + } else if (auto bitmap = m_image_loader.bitmap()) { context.painter().draw_scaled_bitmap(enclosing_int_rect(absolute_rect()), *bitmap, bitmap->rect()); } } diff --git a/Libraries/LibWeb/Loader/ImageResource.cpp b/Libraries/LibWeb/Loader/ImageResource.cpp index e3e714cfce..3daa284deb 100644 --- a/Libraries/LibWeb/Loader/ImageResource.cpp +++ b/Libraries/LibWeb/Loader/ImageResource.cpp @@ -62,10 +62,10 @@ const Gfx::Bitmap* ImageResource::bitmap(size_t frame_index) const if (!m_decoder) return nullptr; if (m_decoder->is_animated()) - return m_decoder->frame(frame_index).image; - return m_decoder->bitmap(); - } - if (!m_decoded_image && !m_has_attempted_decode) { + m_decoded_image = m_decoder->frame(frame_index).image; + else + m_decoded_image = m_decoder->bitmap(); + } else if (!m_decoded_image && !m_has_attempted_decode) { auto image_decoder_client = ImageDecoderClient::Client::construct(); m_decoded_image = image_decoder_client->decode_image(encoded_data()); m_has_attempted_decode = true;