1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 10:08:10 +00:00

LibGfx/WOFF2: Reject fonts with a compressed size larger than 10MiB

This prevents a potential OOM condition when the header is malformed.
This commit is contained in:
Tim Ledbetter 2023-10-24 07:54:20 +01:00 committed by Andreas Kling
parent af633523af
commit e9be1bcd09
3 changed files with 15 additions and 0 deletions

View file

@ -20,3 +20,16 @@ TEST_CASE(tolerate_incorrect_sfnt_size)
EXPECT_EQ(font->family(), "Test"_string);
EXPECT_EQ(font->glyph_count(), 4u);
}
TEST_CASE(malformed_woff2)
{
Array test_inputs = {
TEST_INPUT("woff2/incorrect_compressed_size.woff2"sv)
};
for (auto test_input : test_inputs) {
auto file = MUST(Core::MappedFile::map(test_input));
auto font_or_error = WOFF2::Font::try_load_from_externally_owned_memory(file->bytes());
EXPECT(font_or_error.is_error());
}
}