diff --git a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp index 9018cf5840..f1917748ad 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp @@ -630,10 +630,8 @@ static bool decode_png_ihdr(PNGLoadingContext& context) context.data_current_ptr = streamer.current_data_ptr(); - if (context.width && context.height) { - context.state = PNGLoadingContext::State::IHDRDecoded; + if (context.state == PNGLoadingContext::State::IHDRDecoded) return true; - } } return false; @@ -1018,6 +1016,9 @@ static ErrorOr process_IHDR(ReadonlyBytes data, PNGLoadingContext& context default: return Error::from_string_literal("Unsupported color type"); } + + context.state = PNGLoadingContext::IHDRDecoded; + return {}; }