From 86cec77eb59185e1b04a5a5c5fe0b649dab3d923 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Sun, 29 Nov 2020 14:01:16 -0500 Subject: [PATCH] LibGfx: skip zero-width frames Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27913 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27873 --- Libraries/LibGfx/GIFLoader.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Libraries/LibGfx/GIFLoader.cpp b/Libraries/LibGfx/GIFLoader.cpp index 20704f04e76..63feed39c82 100644 --- a/Libraries/LibGfx/GIFLoader.cpp +++ b/Libraries/LibGfx/GIFLoader.cpp @@ -354,12 +354,13 @@ static bool decode_frame(GIFLoadingContext& context, size_t frame_index) if (code.value() == clear_code) { decoder.reset(); continue; - } else if (code.value() == end_of_information_code) { - break; } + if (code.value() == end_of_information_code) + break; + if (!image.width) + continue; auto colors = decoder.get_output(); - for (const auto& color : colors) { auto c = color_map[color];