mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 20:07:36 +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:
parent
fca9da4191
commit
fd78875662
1 changed files with 6 additions and 12 deletions
|
@ -692,21 +692,15 @@ bool DocumentParser::navigate_to_before_eof_marker()
|
||||||
m_reader.set_reading_backwards();
|
m_reader.set_reading_backwards();
|
||||||
|
|
||||||
while (!m_reader.done()) {
|
while (!m_reader.done()) {
|
||||||
m_reader.move_until([&](auto) { return m_reader.matches_eol(); });
|
|
||||||
if (m_reader.done())
|
|
||||||
return false;
|
|
||||||
|
|
||||||
m_reader.consume_eol();
|
m_reader.consume_eol();
|
||||||
if (!m_reader.matches("%%EOF"))
|
if (m_reader.matches("%%EOF")) {
|
||||||
continue;
|
|
||||||
|
|
||||||
m_reader.move_by(5);
|
m_reader.move_by(5);
|
||||||
if (!m_reader.matches_eol())
|
|
||||||
continue;
|
|
||||||
m_reader.consume_eol();
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_reader.move_until([&](auto) { return m_reader.matches_eol(); });
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue