Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 344911

Summary: >=x11-libs/libXft-2.1.14 causes crashes when missing viable font
Product: Gentoo Linux Reporter: Diego Elio Pettenò (RETIRED) <flameeyes>
Component: New packagesAssignee: Gentoo X packagers <x11>
Severity: normal Keywords: InOverlay, InVCS
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 344827    
Attachments: Build log

Description Diego Elio Pettenò (RETIRED) gentoo-dev 2010-11-10 10:44:41 UTC
Sigh. This happens when trying against the new m4 branch of pambase, and making slim use the graphical-login session.

I'm attaching the gdb backtrace if somebody can understand it.
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-11-10 10:44:50 UTC
Created attachment 253865 [details]
Build log
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-11-10 11:35:44 UTC
Okay maybe it's not slim this time, nor pambase…

I just hit a similar crash with xdm using the _old_ stack…
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-11-10 11:41:18 UTC
Okay not a slim problem, it's libXft; this happens with xdm. The problem is pub=0x0 which is the font that it should be using.

(gdb) bt
#0  0xb74a5697 in XftCharIndex (dpy=0x897d000, pub=0x0, ucs4=80) at xftglyphs.c:726
#1  0xb74a34fd in XftTextExtents8 (dpy=0x897d000, pub=0x0, string=0xb74bdafa "Password Change Required", len=24, extents=0xbfd47b94) at xftextent.c:138
#2  0xb74b7ef3 in XmuXftTextWidth (dpy=0x0, font=0x897d000, string=0xb74bdafa "Password Change Required", len=24) at Login.c:1652
#3  0xb74bb960 in Initialize (greq=0x898da80, gnew=0x898a418, args=0xbfd483f4, num_args=0xbfd47dc8) at Login.c:1841
#4  0xb7545a9d in CallInitialize (class=0xb74c0440, req_widget=<value optimized out>, new_widget=0x898a418, args=0xbfd483f4, num_args=2) at Create.c:229
#5  0xb754650e in xtCreate (name=<value optimized out>, class=<value optimized out>, widget_class=0xb74c0440, parent=0x8989628, default_screen=0x8987390, 
    args=0xbfd483f4, num_args=2, typed_args=0x0, num_typed_args=0, parent_constraint_class=0x0, post_proc=0xb7545c70 <widgetPostProc>) at Create.c:419
#6  0xb7546e3f in _XtCreateWidget (name=0xb74bdddc "login", widget_class=0xb74c0440, parent=0x8989628, args=0xbfd483f4, num_args=2, typed_args=0x0, 
    num_typed_args=0) at Create.c:573
#7  0xb754713c in XtCreateManagedWidget (name=0xb74bdddc "login", widget_class=0xb74c0440, parent=0x8989628, args=0xbfd483f4, num_args=2) at Create.c:613
#8  0xb74bc36b in InitGreet (d=0x896f5c0, dpy=0xbfd4856c, verify=0x8060d68, greet=0x8060d50, dlfuncs=0x80608e0) at greet.c:291
#9  GreetUser (d=0x896f5c0, dpy=0xbfd4856c, verify=0x8060d68, greet=0x8060d50, dlfuncs=0x80608e0) at greet.c:477
#10 0x0805440c in ManageSession (d=0x896f5c0) at session.c:323
#11 0x080508b0 in StartDisplay (d=0x896f5c0) at dm.c:760
#12 0x0804fd2f in ForEachDisplay (f=0x8050a30 <CheckDisplayStatus>) at dpylist.c:56
#13 0x08051575 in StartDisplays (argc=1, argv=0xbfd48b84) at dm.c:624
#14 main (argc=1, argv=0xbfd48b84) at dm.c:194
Comment 4 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-11-10 11:52:22 UTC
Okay so the bottomline is: libXft needs at least one font package, no matter which, to actually not segfault.

After installing dejavu it worked.
Comment 5 Tomáš Chvátal (RETIRED) gentoo-dev 2010-12-04 12:35:25 UTC
Added dependency on virtual/ttf-fonts so there is some font present at runtime.