Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--backend/pdf/ev-poppler.cc8
2 files changed, 12 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 1356293..7b0e605 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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;