[poppler] poppler/XRef.cc

Albert Astals Cid aacid at kemper.freedesktop.org
Tue Apr 25 17:44:24 UTC 2017


 poppler/XRef.cc |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

New commits:
commit 278439531b13b0b047dbe3a75aa3f1b3407c8bd4
Author: Albert Astals Cid <aacid at kde.org>
Date:   Tue Apr 25 19:42:15 2017 +0200

    Fix memory leak (and probably logic bug) parsing broken XRef entries
    
    Don't need to get obj1 again to ask if it's an int64 instead of an int
    
    Bug #100775

diff --git a/poppler/XRef.cc b/poppler/XRef.cc
index e4caaab7..c141bbfe 100644
--- a/poppler/XRef.cc
+++ b/poppler/XRef.cc
@@ -1606,8 +1606,7 @@ GBool XRef::parseEntry(Goffset offset, XRefEntry *entry)
      str->makeSubStream(offset, gFalse, 20, &obj)), gTrue);
 
   Object obj1, obj2, obj3;
-  if (((parser.getObj(&obj1)->isInt()) ||
-       parser.getObj(&obj1)->isInt64()) &&
+  if (((parser.getObj(&obj1)->isInt()) || obj1.isInt64()) &&
       (parser.getObj(&obj2)->isInt()) &&
       (parser.getObj(&obj3)->isCmd("n") || obj3.isCmd("f"))) {
     if (obj1.isInt64())


More information about the poppler mailing list