diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-03-21 12:43:18 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-03-30 16:11:37 +0200 |
commit | 74bf09b483376195f984839b336d4349e33b5bf7 (patch) | |
tree | da17b895c97725fb9b6e0b3de69fe4de1f0ba0ac /xmlsecurity | |
parent | 371b9dd9166b19b8beee584d345eec714719c8c2 (diff) |
Make PDFDocument::ReadKeyword work at end of file
If the first ReadChar fails due to EOF, ch would be used uninitialized. If the
second ReadChar fails due to EOF, the SeekRel(-1) shouldn't be executed.
Change-Id: Ibf99539a3a8880a77653bd7576721104f9782e36
Reviewed-on: https://gerrit.libreoffice.org/35504
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
(cherry picked from commit 9871f1eee320bca222af909a33b446ae70167883)
Diffstat (limited to 'xmlsecurity')
-rw-r--r-- | xmlsecurity/source/pdfio/pdfdocument.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/xmlsecurity/source/pdfio/pdfdocument.cxx b/xmlsecurity/source/pdfio/pdfdocument.cxx index 0457f0dd3e34..209b6df3dbe2 100644 --- a/xmlsecurity/source/pdfio/pdfdocument.cxx +++ b/xmlsecurity/source/pdfio/pdfdocument.cxx @@ -1311,12 +1311,14 @@ OString PDFDocument::ReadKeyword(SvStream& rStream) OStringBuffer aBuf; char ch; rStream.ReadChar(ch); + if (rStream.IsEof()) + return OString(); while (isalpha(ch)) { aBuf.append(ch); rStream.ReadChar(ch); if (rStream.IsEof()) - break; + return aBuf.toString(); } rStream.SeekRel(-1); return aBuf.toString(); |