diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-03-21 12:43:18 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-03-21 13:29:42 +0000 |
commit | 9871f1eee320bca222af909a33b446ae70167883 (patch) | |
tree | 5af88a01fd6ee80f959eb33b0d1c3fa8948efcae /xmlsecurity | |
parent | e73505fe0fb44075b462a20a3b2091063db5e1b3 (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>
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 94ebd1f46b55..dd63c2395634 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(); |