https://bugs.documentfoundation.org/show_bug.cgi?id=63054
--- Comment #4 from Mike Kaganski <[email protected]> --- The problem is in pdf_string_parser::operator(): pdfparse.cxx line 119 (http://opengrok.libreoffice.org/xref/core/sdext/source/pdfimport/pdfparse/pdfparse.cxx#119) This line is used to skip escaped braces, like (\)) It pre-increments the scanner to swallow the backslash, and after that, the scanner is incremented again (normally) on line 124. The operator++ for boost spirit classic scanner does two things: 1. Advances the scanner; 2. Skips whitespace. So, if the parsed string has this form: (\ ) i.e. <left parenthesis><backslash><space><right parenthesis> then the first increment (line 119, condition = backslash) skips TWO characters at once, and the next increment skips the normal closing parenthesis. Thus, the parsing continues. This gives "incorrect" PDF structure, i.e. the check in pdfparse.cxx line 575 gives false, thus the whole PDF load fails up to sfxbasemodel.cxx line 1929 (http://opengrok.libreoffice.org/xref/core/sfx2/source/doc/sfxbasemodel.cxx#1929), where the error is displayed. I'll try to prepare a patch for that case. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Libreoffice-bugs mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs
