diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | backend/pdf/ev-poppler.cc | 8 |
2 files changed, 12 insertions, 4 deletions
@@ -1,3 +1,11 @@ +2007-06-29 Carlos Garcia Campos <carlosgc@gnome.org> + + * backend/pdf/ev-poppler.cc: + (pdf_document_thumbnails_get_dimensions): + + Make sure thumbnails width and height is not <= 0. Fixes a crash + with some pdf documents which have really small pages. + 2007-06-22 Gabor Kelemen <kelemeng@gnome.hu> * shell/main.c: (main): diff --git a/backend/pdf/ev-poppler.cc b/backend/pdf/ev-poppler.cc index e3b80b4..5cdedde 100644 --- a/backend/pdf/ev-poppler.cc +++ b/backend/pdf/ev-poppler.cc @@ -448,7 +448,7 @@ pdf_document_render (EvDocument *document, width = (int) ((width_points * rc->scale) + 0.5); height = (int) ((height_points * rc->scale) + 0.5); } - + #ifdef HAVE_POPPLER_PAGE_RENDER cairo_t *cr; @@ -1283,10 +1283,10 @@ pdf_document_thumbnails_get_dimensions (EvDocumentThumbnails *document_thumbnail poppler_page_get_size (poppler_page, &page_width, &page_height); - *width = (gint) (page_width * rc->scale); - *height = (gint) (page_height * rc->scale); + *width = (gint) MAX (page_width * rc->scale, 1); + *height = (gint) MAX (page_height * rc->scale, 1); } - + if (rc->rotation == 90 || rc->rotation == 270) { gint temp; |