diff options
author | Nickolay V. Shmyrev <nshmyrev@src.gnome.org> | 2005-05-29 11:27:28 (GMT) |
---|---|---|
committer | Nickolay V. Shmyrev <nshmyrev@src.gnome.org> | 2005-05-29 11:27:28 (GMT) |
commit | 891cb3e7733ab34e949e3aeef1f3461ab2431717 (patch) | |
tree | 354d66d27688e0e5044721c0cd20a0def57df20d /djvu/djvu-document.c | |
parent | c560fbddbdf6b3e3b0961cbc896e7b4f739f2cd1 (diff) |
Improve djvu loading speed. Fix for 301993
Diffstat (limited to 'djvu/djvu-document.c')
-rw-r--r-- | djvu/djvu-document.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/djvu/djvu-document.c b/djvu/djvu-document.c index aa853a7..d82a643 100644 --- a/djvu/djvu-document.c +++ b/djvu/djvu-document.c @@ -116,24 +116,19 @@ djvu_document_get_page_size (EvDocument *document, double *height) { DjvuDocument *djvu_document = DJVU_DOCUMENT (document); - - ddjvu_page_t *d_page; + ddjvu_pageinfo_t info; g_return_if_fail (djvu_document->d_document); - d_page = ddjvu_page_create_by_pageno (djvu_document->d_document, page); - - while (!ddjvu_page_decoding_done (d_page)) { + while (ddjvu_document_get_pageinfo(djvu_document->d_document, page, &info) < DDJVU_JOB_OK) { ddjvu_message_wait (djvu_document->d_context); ddjvu_message_pop (djvu_document->d_context); } if (width) - *width = ddjvu_page_get_width (d_page) * SCALE_FACTOR; + *width = info.width * SCALE_FACTOR; if (height) - *height = ddjvu_page_get_height (d_page) * SCALE_FACTOR; - - ddjvu_page_release (d_page); + *height = info.height * SCALE_FACTOR; } static GdkPixbuf * |