diff options
author | Thomas Freitag <Thomas.Freitag@alfa.de> | 2012-01-15 15:07:18 +0100 |
---|---|---|
committer | Albert Astals Cid <aacid@kde.org> | 2012-01-15 15:07:18 +0100 |
commit | 7d171e19257023cda55d0040257e8f0a2008271f (patch) | |
tree | 12513db4bb864524ff21f6072db04ef743fce6e6 | |
parent | 81c989d905b6ba053c87d2a661d71853ddf96b99 (diff) |
Fix stack overflow in PDFDoc::markObject()
Bug 44660
-rw-r--r-- | poppler/PDFDoc.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/poppler/PDFDoc.cc b/poppler/PDFDoc.cc index 2758206f..1c853853 100644 --- a/poppler/PDFDoc.cc +++ b/poppler/PDFDoc.cc @@ -26,7 +26,7 @@ // Copyright (C) 2010 Ilya Gorenbein <igorenbein@finjan.com> // Copyright (C) 2010 Srinivas Adicherla <srinivas.adicherla@geodesic.com> // Copyright (C) 2010 Philip Lorenz <lorenzph+freedesktop@gmail.com> -// Copyright (C) 2011 Thomas Freitag <Thomas.Freitag@alfa.de> +// Copyright (C) 2011, 2012 Thomas Freitag <Thomas.Freitag@alfa.de> // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git @@ -1234,6 +1234,8 @@ void PDFDoc::markObject (Object* obj, XRef *xRef, XRef *countRef, Guint numOffse } else { XRefEntry *entry = countRef->getEntry(obj->getRef().num + numOffset); entry->gen++; + if (entry->gen > 9) + break; } Object obj1; getXRef()->fetch(obj->getRef().num, obj->getRef().gen, &obj1); |