1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 20:47:45 +00:00

LibPDF: Fix navigate_to_before_eof_marker() for PDFs not ending in EOL

The way this was factored before, we would miss the %%EOF marker if it
didn't have a valid end-of-line sequence after it.
This commit is contained in:
Julian Offenhäuser 2023-03-21 20:02:11 +01:00 committed by Andreas Kling
parent fca9da4191
commit fd78875662

View file

@ -692,19 +692,13 @@ bool DocumentParser::navigate_to_before_eof_marker()
m_reader.set_reading_backwards();
while (!m_reader.done()) {
m_reader.consume_eol();
if (m_reader.matches("%%EOF")) {
m_reader.move_by(5);
return true;
}
m_reader.move_until([&](auto) { return m_reader.matches_eol(); });
if (m_reader.done())
return false;
m_reader.consume_eol();
if (!m_reader.matches("%%EOF"))
continue;
m_reader.move_by(5);
if (!m_reader.matches_eol())
continue;
m_reader.consume_eol();
return true;
}
return false;