[evince/f12/master] Test glyph->data for MDVI_GLYPH_EMPTY (#555113)

mkasik mkasik at fedoraproject.org
Mon Aug 2 14:03:26 UTC 2010


commit d08b1b30b1b913686dd44e413819aca8dd42d318
Author: Marek Kasik <mkasik at redhat.com>
Date:   Mon Aug 2 16:00:30 2010 +0200

    Test glyph->data for MDVI_GLYPH_EMPTY (#555113)

 evince-mdvi.patch |   29 +++++++++++++++++++++++++++++
 evince.spec       |    8 +++++++-
 2 files changed, 36 insertions(+), 1 deletions(-)
---
diff --git a/evince-mdvi.patch b/evince-mdvi.patch
new file mode 100644
index 0000000..849eb74
--- /dev/null
+++ b/evince-mdvi.patch
@@ -0,0 +1,29 @@
+--- evince-2.28.2/backend/dvi/cairo-device.c	2009-04-24 09:24:16.000000000 +0200
++++ evince-2.28.2/backend/dvi/cairo-device.c	2010-08-02 13:08:39.000000000 +0200
+@@ -55,7 +55,9 @@ dvi_cairo_draw_glyph (DviContext  *dvi,
+ 
+ 	glyph = &ch->grey;
+ 
+-	isbox = (glyph->data == NULL || (dvi->params.flags & MDVI_PARAM_CHARBOXES));
++	isbox = (glyph->data == NULL ||
++	         (dvi->params.flags & MDVI_PARAM_CHARBOXES) ||
++	         MDVI_GLYPH_ISEMPTY (glyph->data));
+ 
+ 	x = - glyph->x + x0 + cairo_device->xmargin;
+ 	y = - glyph->y + y0 + cairo_device->ymargin;
+--- evince-2.28.2/backend/dvi/mdvi-lib/font.c	2009-04-24 09:24:16.000000000 +0200
++++ evince-2.28.2/backend/dvi/mdvi-lib/font.c	2010-08-02 13:01:50.000000000 +0200
+@@ -379,10 +379,12 @@ again:
+ 		return ch;
+ 	} else if(MDVI_ENABLED(dvi, MDVI_PARAM_ANTIALIASED)) {
+ 		if(ch->grey.data && 
++		   !MDVI_GLYPH_ISEMPTY(ch->grey.data) &&
+ 		   ch->fg == dvi->curr_fg && 
+ 		   ch->bg == dvi->curr_bg)
+ 		   	return ch;
+-		if(ch->grey.data) {
++		if(ch->grey.data &&
++		   !MDVI_GLYPH_ISEMPTY(ch->grey.data)) {
+ 			if(dvi->device.free_image)
+ 				dvi->device.free_image(ch->grey.data);
+ 			ch->grey.data = NULL;
diff --git a/evince.spec b/evince.spec
index 4068426..493f039 100644
--- a/evince.spec
+++ b/evince.spec
@@ -6,7 +6,7 @@
 
 Name:		evince
 Version:	2.28.2
-Release:	3%{?dist}
+Release:	4%{?dist}
 Summary:	Document viewer
 
 License:	GPLv2+ and GFDL
@@ -19,6 +19,8 @@ Patch1:         0001-Provide-some-indication-that-search-is-not-available.patch
 Patch2:		evince-thumbnail-allocation.patch
 # https://bugzilla.redhat.com/show_bug.cgi?id=545685
 Patch3:		evince-mapping.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=555113
+Patch4:		evince-mdvi.patch
 
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
@@ -110,6 +112,7 @@ This package contains a backend to let evince display djvu files.
 %patch1 -p1 -b .search-not-available
 %patch2 -p0 -b .thumbnail-allocation
 %patch3 -p1 -b .mapping
+%patch4 -p1 -b .mdvi
 
 %build
 %configure --disable-static --disable-scrollkeeper \
@@ -267,6 +270,9 @@ fi
 %{_libdir}/evince/1/backends/djvudocument.evince-backend
 
 %changelog
+* Mon Aug  2 2010 Marek Kasik <mkasik at redhat.com> - 2.28.2-4
+- Test glyph->data for MDVI_GLYPH_EMPTY (#555113)
+
 * Fri Jul 23 2010 Marek Kasik <mkasik at redhat.com> - 2.28.2-3
 - Don't build evince with RPath (#584969)
 - Remove all *.a


More information about the scm-commits mailing list