[cairo] Failures using user-font backend
ranma42 at gmail.com
Wed Jun 30 11:11:06 PDT 2010
Running the test suite using the user font backend shows some interesting bugs:
1) text-glyph-range and toy-font-face make strong assumptions
regarding the behavior of a font backend.
text-glyph-range assumes that ascii and glyph index for "cairo" are the same
toy-font-face exit with an assertion (since
cairo_toy_font_face_get_family (font_face) == "")
toy-font-face.c:104: preamble: Assertion `0 == (strcmp)
(cairo_toy_font_face_get_family (font_face), "@cairo:")' failed.
2) pthread-show-text crashes with an assertion on linux, but is fine on MacOS X.
This probably is caused by non-thread-safe code in the user-font
backend or in scaled-font.
3) halo and halo-transform have an ugly output. I think this loss of
accuracy might be caused by the fixed
point representation of the paths.
4) text-transform incorrectly clips the glyphs, as if their extents
were not computed correctly
#1 is not really a bug, but the test suite might probably be improved
to handle those tests better.
#2 should probably be fixed as part of making cairo thread safe.
#3 and #4 cause incorrect output.
As per request on IRC channel, I'm posting my observations here (might
be useful as a mini TODO list, too ;) ).
More information about the cairo