[poppler] Branch 'poppler-0.20' - 2 commits - poppler/Annot.cc

Albert Astals Cid aacid at kemper.freedesktop.org
Sun Sep 9 03:52:08 PDT 2012


 poppler/Annot.cc |   11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

New commits:
commit a4f59113574a8d7460c6ce5000cb09d20fe52b74
Author: Albert Astals Cid <aacid at kde.org>
Date:   Sun Sep 9 12:49:43 2012 +0200

    Fix memory leak

diff --git a/poppler/Annot.cc b/poppler/Annot.cc
index 3e5cff6..aa8b9a8 100644
--- a/poppler/Annot.cc
+++ b/poppler/Annot.cc
@@ -15,7 +15,7 @@
 //
 // Copyright (C) 2006 Scott Turner <scotty1024 at mac.com>
 // Copyright (C) 2007, 2008 Julien Rebetez <julienr at svn.gnome.org>
-// Copyright (C) 2007-2011 Albert Astals Cid <aacid at kde.org>
+// Copyright (C) 2007-2012 Albert Astals Cid <aacid at kde.org>
 // Copyright (C) 2007-2011 Carlos Garcia Campos <carlosgc at gnome.org>
 // Copyright (C) 2007, 2008 Iñigo Martínez <inigomartinez at gmail.com>
 // Copyright (C) 2007 Jeff Muizelaar <jeff at infidigm.net>
@@ -4506,6 +4506,7 @@ void AnnotWidget::drawListBox(FormFieldChoice *fieldChoice,
         if (daToks) {
           deleteGooList(daToks, GooString);
         }
+        delete convertedText;
         return;
       }
       layoutText(fieldChoice->getChoice(i), convertedText, &j, font, &w, 0.0, NULL, gFalse);
commit 28240046f8fe37ca96f9a80cb1ea3a59af9c66f3
Author: Thomas Freitag <Thomas.Freitag at alfa.de>
Date:   Sun Sep 9 12:48:26 2012 +0200

    Fix crash in 589.pdf.SIGSEGV.8b1.929

diff --git a/poppler/Annot.cc b/poppler/Annot.cc
index 24ef57d..3e5cff6 100644
--- a/poppler/Annot.cc
+++ b/poppler/Annot.cc
@@ -25,6 +25,7 @@
 // Copyright (C) 2009 Ilya Gorenbein <igorenbein at finjan.com>
 // Copyright (C) 2011 José Aliste <jaliste at src.gnome.org>
 // Copyright (C) 2012 Fabio D'Urso <fabiodurso at hotmail.it>
+// Copyright (C) 2012 Thomas Freitag <Thomas.Freitag at 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
@@ -4500,6 +4501,13 @@ void AnnotWidget::drawListBox(FormFieldChoice *fieldChoice,
     wMax = 0;
     for (i = 0; i < fieldChoice->getNumChoices(); ++i) {
       j = 0;
+      if (fieldChoice->getChoice(i) == NULL) {
+        error(errSyntaxError, -1, "Invalid annotation listbox");
+        if (daToks) {
+          deleteGooList(daToks, GooString);
+        }
+        return;
+      }
       layoutText(fieldChoice->getChoice(i), convertedText, &j, font, &w, 0.0, NULL, gFalse);
       if (w > wMax) {
         wMax = w;


More information about the poppler mailing list