Bug 480928

Summary: Fontconfig makes GStreamer plugin crash
Product: [Fedora] Fedora Reporter: Bastien Nocera <bnocera>
Component: fontconfigAssignee: Behdad Esfahbod <behdad>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: behdad, fonts-bugs, yaneti
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-23 19:32:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 446452    

Description Bastien Nocera 2009-01-21 12:38:05 UTC
fontconfig-2.6.93-1.git.64.g6aa4dce.fc11.x86_64
cairo-1.8.6-1.fc11.x86_64
gstreamer-0.10.22-1.fc11.x86_64
gstreamer-plugins-good-0.10.11-5.fc11.x86_64

$ gst-inspect-0.10 cairotextoverlay
would segfault

#0  IA__FcFontRenderPrepare (config=0x1544d60, pat=0x1542f00, font=0x0) at fcmatch.c:430
#1  0x00007f1172515667 in IA__FcFontMatch (config=0x1544d60, p=0x1542f00, result=0x7fff80e269ac) at fcmatch.c:578
#2  0x00007f1172c5caba in _cairo_ft_scaled_font_create_toy (toy_face=0x1542d20, font_matrix=0x15427c0, ctm=0x1542868, font_options=0x7fff80e26c20, font=0x7fff80e26a40) at cairo-ft-font.c:1694
#3  0x00007f1172c231bc in _cairo_toy_font_face_scaled_font_create (abstract_font_face=0x1542d20, font_matrix=0x15427c0, ctm=0x1542868, options=0x7fff80e26c20, scaled_font=0x7fff80e26a40) at cairo-font-face.c:625
#4  0x00007f1172c38117 in cairo_scaled_font_create (font_face=0x1542d20, font_matrix=0x15427c0, ctm=0x1542868, options=0x7fff80e26c20) at cairo-scaled-font.c:886
#5  0x00007f1172c23d05 in _cairo_gstate_ensure_scaled_font (gstate=0x1542760) at cairo-gstate.c:1489
#6  0x00007f1172c25229 in _cairo_gstate_get_font_extents (gstate=0x7, extents=0x18) at cairo-gstate.c:1507
#7  0x00007f1172c1f771 in cairo_font_extents (cr=0x1542730, extents=0x18) at cairo.c:2650
#8  0x00007f11730c096b in cairo_move_to () at cairo.c:1374
#9  0x00007f11730c1075 in cairo_move_to () at cairo.c:1374
#10 0x0000000000c5fdea in g_type_create_instance () from /lib64/libgobject-2.0.so.0
#11 0x0000000000c430db in ?? () from /lib64/libgobject-2.0.so.0
#12 0x0000000000c4375a in g_object_newv () from /lib64/libgobject-2.0.so.0
#13 0x0000000000c442e7 in g_object_new_valist () from /lib64/libgobject-2.0.so.0
#14 0x0000000000c4442c in g_object_new () from /lib64/libgobject-2.0.so.0
#15 0x000000000064e544 in gst_element_factory_create () from /usr/lib64/libgstreamer-0.10.so.0
#16 0x00000000004050b0 in gst_element_factory_get_klass ()
#17 0x0000000000407275 in gst_element_factory_get_klass ()
#18 0x00007f11788ac5c6 in __libc_start_main () from /lib64/libc.so.6
#19 0x0000000000403aa9 in gst_element_factory_get_klass ()

This needs to be fixed ASAP, otherwise I can't compile any GStreamer application in rawhide.

Comment 1 Bastien Nocera 2009-01-21 12:43:18 UTC
Downgrading fontconfig doesn't work, so it's probably a cairo problem, although I can't test it because the soname changed recently.

Comment 2 Yanko Kaneti 2009-01-22 08:45:15 UTC
Downgrading to something pre 2.6.9x should have worked, this is caused by 
9a7c41b29f33dcd3cf7b3a422b1e46e3b88e11fe 
[fcmatch] Move FcFontSetMatch() functionality into FcFontSetMatchInternal()
in http://cgit.freedesktop.org/~behdad/fontconfig/

In its previous version FcFontMatch never called FcFontRenderPrepare if there was no font available (like in mock chroot)

Comment 3 Bastien Nocera 2009-01-22 17:04:48 UTC
Adding this line work-around the problem for now:
BuildRequires: liberation-sans-fonts

fc-match crashes as well when no fonts are installed.

Comment 4 Behdad Esfahbod 2009-01-23 19:13:38 UTC
Bastien, cairo .soname changed?

Comment 5 Behdad Esfahbod 2009-01-23 19:32:01 UTC
Built fontconfig-2.6.94-1.git.65.g628ee83.fc11