From 7849c8724a1ee2580da7a8d0e1c1661bc13e1f41 Mon Sep 17 00:00:00 2001 From: Yusuke Shinyama Date: Fri, 28 Mar 2014 17:29:26 +0900 Subject: [PATCH] Fixed: PDFXRefStream.get_objids returns invalid objids. --- pdfminer/pdfdocument.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pdfminer/pdfdocument.py b/pdfminer/pdfdocument.py index b97538b..58b2e9c 100644 --- a/pdfminer/pdfdocument.py +++ b/pdfminer/pdfdocument.py @@ -238,7 +238,11 @@ class PDFXRefStream(PDFBaseXRef): def get_objids(self): for (start, nobjs) in self.ranges: for i in xrange(nobjs): - yield start+i + offset = self.entlen * i + ent = self.data[offset:offset+self.entlen] + f1 = nunpack(ent[:self.fl1], 1) + if f1 == 1 or f1 == 2: + yield start+i return def get_pos(self, objid):