? check_thumb_iserror.patch
Index: glib/poppler-page.cc
===================================================================
RCS file: /cvs/poppler/poppler/glib/poppler-page.cc,v
retrieving revision 1.52
diff -u -r1.52 poppler-page.cc
--- glib/poppler-page.cc	26 Dec 2006 19:56:29 -0000	1.52
+++ glib/poppler-page.cc	25 Jan 2007 16:51:02 -0000
@@ -653,7 +653,7 @@
   g_return_val_if_fail (height != NULL, FALSE);
 
   page->page->getThumb (&thumb);
-  if (thumb.isNull ())
+  if (thumb.isNull () || thumb.isError())
     {
       thumb.free ();
       return FALSE;
Index: poppler/Page.cc
===================================================================
RCS file: /cvs/poppler/poppler/poppler/Page.cc,v
retrieving revision 1.15
diff -u -r1.15 Page.cc
--- poppler/Page.cc	26 Dec 2006 19:56:29 -0000	1.15
+++ poppler/Page.cc	25 Jan 2007 16:51:02 -0000
@@ -461,7 +461,7 @@
 
   /* Get stream dict */
   thumb.fetch(xref, &fetched_thumb);
-  if (fetched_thumb.isNull()) {
+  if (fetched_thumb.isNull() || fetched_thumb.isError()) {
     fetched_thumb.free();
     return gFalse;
   }