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

New commits:
commit a4f59113574a8d7460c6ce5000cb09d20fe52b74
Author: Albert Astals Cid <[email protected]>
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 <[email protected]>
 // Copyright (C) 2007, 2008 Julien Rebetez <[email protected]>
-// Copyright (C) 2007-2011 Albert Astals Cid <[email protected]>
+// Copyright (C) 2007-2012 Albert Astals Cid <[email protected]>
 // Copyright (C) 2007-2011 Carlos Garcia Campos <[email protected]>
 // Copyright (C) 2007, 2008 Iñigo Martínez <[email protected]>
 // Copyright (C) 2007 Jeff Muizelaar <[email protected]>
@@ -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 <[email protected]>
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 <[email protected]>
 // Copyright (C) 2011 José Aliste <[email protected]>
 // Copyright (C) 2012 Fabio D'Urso <[email protected]>
+// Copyright (C) 2012 Thomas Freitag <[email protected]>
 //
 // 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;
_______________________________________________
poppler mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/poppler

Reply via email to