From a91fecb17ea83dc1fc2088dd9b5bab8fda6c9a71 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Thu, 8 Feb 2024 18:46:01 -0500 Subject: [PATCH] Revert "LibPDF: Don't over-read in charset formats 1 and 2" This reverts commit 52afa936c48f62df8a9b7fec0e78fa75d55407ec. No longer necessary after #23122 -- turns out things work better when you do them right. No behavior change. --- Userland/Libraries/LibPDF/Fonts/CFF.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Userland/Libraries/LibPDF/Fonts/CFF.cpp b/Userland/Libraries/LibPDF/Fonts/CFF.cpp index a58ce77bc1..08f0a00e71 100644 --- a/Userland/Libraries/LibPDF/Fonts/CFF.cpp +++ b/Userland/Libraries/LibPDF/Fonts/CFF.cpp @@ -756,7 +756,7 @@ PDFErrorOr> CFF::parse_charset(Reader&& reader, size_t glyph_co // CFF spec, "Table 19 Range1 Format (Charset)" auto first_sid = TRY(reader.try_read>()); int left = TRY(reader.try_read()); - for (SID sid = first_sid; left >= 0 && names.size() < glyph_count - 1; left--, sid++) + for (SID sid = first_sid; left >= 0; left--, sid++) TRY(names.try_append(sid)); } } else if (format == 2) { @@ -767,7 +767,7 @@ PDFErrorOr> CFF::parse_charset(Reader&& reader, size_t glyph_co // CFF spec, "Table 21 Range2 Format" auto first_sid = TRY(reader.try_read>()); int left = TRY(reader.try_read>()); - for (SID sid = first_sid; left >= 0 && names.size() < glyph_count - 1; left--, sid++) + for (SID sid = first_sid; left >= 0; left--, sid++) TRY(names.try_append(sid)); } } else {