After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 669017 - evince: blank djvu pages appear black
evince: blank djvu pages appear black
Status: RESOLVED FIXED
Product: evince
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: Evince Maintainers
Evince Maintainers
: 650198 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2012-01-30 11:28 UTC by Pacho Ramos
Modified: 2013-01-10 11:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch (1.82 KB, patch)
2013-01-09 23:07 UTC, José Aliste
committed Details | Review

Description Pacho Ramos 2012-01-30 11:28:13 UTC
As reported downstream to:
https://bugs.gentoo.org/show_bug.cgi?id=367373

Page 14 of attached file can be used to test this behavior
Comment 1 Pacho Ramos 2012-01-30 11:30:33 UTC
The file is too big to attach :s

It's in:
http://www.2shared.com/file/exnz7tJ-/The_Varangians_of_Byzantium.html
Comment 2 André Klapper 2012-01-30 11:44:22 UTC
Thanks for taking the time to report this bug.
However, you are using version 2.32 which is too old and not supported anymore. GNOME developers are no longer working on that version, so unfortunately there will not be any bug fixes for the version that you use.

By upgrading to a newer version of GNOME you could receive bug fixes and new functionality. You may need to upgrade your Linux distribution to obtain a newer version of GNOME.
Please feel free to reopen this bug if the problem still occurs with version 3.2 or 3.0 of GNOME.
Comment 3 Mikael Magnusson 2012-02-13 06:19:41 UTC
*** Bug 650198 has been marked as a duplicate of this bug. ***
Comment 4 Alexandre Rostovtsev 2012-02-13 06:57:06 UTC
(In reply to comment #2)
> Thanks for taking the time to report this bug.
> However, you are using version 2.32 which is too old and not supported anymore.

This bug is still present in evince-3.2.1
Comment 5 José Aliste 2013-01-09 23:07:44 UTC
Created attachment 233128 [details] [review]
Patch

The following patch solves the issue. If the page is empty, ddjvu_page_render does nothing and since the format is RGB24, the page gets black. Thus, we render a white page when ddjvu_page_render returns FALSE
Comment 6 Carlos Garcia Campos 2013-01-10 11:12:03 UTC
Review of attachment 233128 [details] [review]:

Looks good to me, please check my comments before pushing.

::: backend/djvu/djvu-document.c
@@ +373,3 @@
 			   djvu_document->d_format,
 			   rowstride,
 			   pixels);

You need to reindent these lines too.

@@ +385,1 @@
 	cairo_surface_mark_dirty (surface);

If the surface data hasn't been modified by djvulibre you don't need to mark it as dirty, so you can move this to an else branch of the previous if.
Comment 7 Carlos Garcia Campos 2013-01-10 11:12:03 UTC
Review of attachment 233128 [details] [review]:

Looks good to me, please check my comments before pushing.

::: backend/djvu/djvu-document.c
@@ +373,3 @@
 			   djvu_document->d_format,
 			   rowstride,
 			   pixels);

You need to reindent these lines too.

@@ +385,1 @@
 	cairo_surface_mark_dirty (surface);

If the surface data hasn't been modified by djvulibre you don't need to mark it as dirty, so you can move this to an else branch of the previous if.
Comment 8 José Aliste 2013-01-10 11:56:17 UTC
Comment on attachment 233128 [details] [review]
Patch

pushed to master as commit  f644cad4d7819e9b97cbc93a32c7ab9d60f4196c
Comment 9 José Aliste 2013-01-10 11:56:40 UTC
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.