If we find a glyph image of a format that is different from the font's
format, then we use a temporary image and convert to the font's
format.
This provides a simple fix for the crash identified in bug #4705:
crash at XRenderAddGlyphs
https://bugs.freedesktop.org/show_bug.cgi?id=4705
A later improvement would guarantee that the "font's format" was
carefully chosen to be able to contain all glyphs in the font without
information loss.
This optimisation takes care to not replay what was done
before surface is cleared. We don't erase recorded commands
since we may have earlier snapshots of this surface.
(cherry picked from 926e2494ca2211e9117ab70fc427208d125e1bd5 commit)
The new paginated create_similar simply forwards to target backend create_similar.
We maintain the fact that PS and PDF surfaces are returning image
surfaces for create_similar by moving that explicitly to their own
create_similar functions.
(This commit is the combination of the following original commits:
6b69e8c012adb4f2fc2ee9c1579fed8214e8f510
2589db92a4395f8e900dbc4eafc45982f0d985d3
)
To hit the Firefox 3 schedule in early 2007 we'll need to have a 1.4 release
out much sooner. Let's shoot for October 2006 which gives 6 months between
1.2 and 1.4.
Also, sunmoon1997 has identified a couple more important issues to be fixed
before 1.2 releases.
In several cases the -rgb24 reference images were identical to the -ref images.
So we change the logic to find the latter if the former doesn't exist, and then
we remove the redundant images.
The big change here is to change the upload directory to be the snapshots directory
rather than the releases directory. We also use make dist rather than make distcheck
since there are currently a few tests still failing.
The paginated surface layer was missing its get_font_options function.
It now defers to the target surface. The PDF backend already had a
get_font_options function, but the PS backend was also missing it.
This should fix the problem with 72DPI hinting seen in glyph paths in
PostScript output.
Thanks to Owen Taylor for identifying this problem and the correct
fix.