[cairo-bugs] [Bug 18862] New: cairo calls FT_Done_Face on FT_Faces for unscaled_fonts created from_face
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Wed Dec 3 02:45:16 PST 2008
http://bugs.freedesktop.org/show_bug.cgi?id=18862
Summary: cairo calls FT_Done_Face on FT_Faces for unscaled_fonts
created from_face
Product: cairo
Version: 1.9.1
Platform: Other
OS/Version: All
Status: NEW
Severity: critical
Priority: medium
Component: freetype font backend
AssignedTo: david at freetype.org
ReportedBy: bugs.freedesktop at karlt.net
QAContact: cairo-bugs at cairographics.org
CC: freedesktop at behdad.org
The FT_Faces on unscaled_fonts created from_face are not owned by cairo and
therefore must not be Done by cairo.
But the code in _cairo_ft_unscaled_font_lock_face
http://cgit.freedesktop.org/cairo/tree/src/cairo-ft-font.c?id=d1801c23fae3777c7c59e084894a3410f7a1f932#n564
and _has_unlocked_face
http://cgit.freedesktop.org/cairo/tree/src/cairo-ft-font.c?id=d1801c23fae3777c7c59e084894a3410f7a1f932#n527
makes no distinction.
(It looks like the bug may have been introduced when the from_face
unscaled_fonts were included in the ft_unscaled_font_map:
http://cgit.freedesktop.org/cairo/commit/?id=60cf2ef8449e1fd09fe0f2d8c8dc5fa2bb855e5a
)
This could be fixed either by testing unscaled->from_face in
_has_unlocked_face or by initializing lock_count = 1 for unscaled_fonts
from_face and appropriately modifying the assert in
_cairo_ft_unscaled_font_unlock_face.
--
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the cairo-bugs
mailing list