Toon's note gave me the idea of trying xfs in gdb to track down the
segv I was weeing.  It has helped.  A segv happens in MakeAtom()
when called by FreeTypeAddProperties() as seen here:

Program received signal SIGSEGV, Segmentation fault.
0x08052def in MakeAtom ()
(gdb) where
#0  0x08052def in MakeAtom ()
#1  0x40094545 in FreeTypeAddProperties () from /usr/X11R6/lib/libXfont.so.1
#2  0x400964c0 in FreeTypeLoadXFont () from /usr/X11R6/lib/libXfont.so.1
#3  0x40096a13 in FreeTypeGetInfoScalable () from /usr/X11R6/lib/libXfont.so.1
#4  0x4005c2af in FontFileListOneFontWithInfo () from /usr/X11R6/lib/libXfont.so.1
#5  0x4005c45f in FontFileListNextFontWithInfo () from /usr/X11R6/lib/libXfont.so.1
#6  0x080511b2 in do_list_fonts_with_info ()
#7  0x0805190c in StartListFontsWithInfo ()
#8  0x0804b313 in ProcListFontsWithXInfo ()
#9  0x0804a172 in Dispatch ()
#10 0x08049fa2 in main ()
#11 0x401237ee in __libc_start_main () from /lib/libc.so.6


I *think* it is the first call to MakeAtom() in FreeTypeAddProperties()
based on the disassembply (0x1 is pushed, then 0x4, something is lea'ed
then the function call; the MakeAtom call is:

   info->props[i].name = MakeAtom("FONT", 4, TRUE);

As for why the segv occurs in MakeAtom, I cannot say.  I have verified
that the segv does not occur on the first call to MakeAtom, only (it
seems) the first call by FreeTypeAddProperties().  

The lack of debugging symbols, though, is making this difficult to
confirm.  I'll have to try w/ a -g compile.

-JimC


_______________________________________________
Fonts mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/fonts

Reply via email to