Bug 691336

Summary: UFST build segfault on start.
Product: Ghostscript Reporter: Hin-Tak Leung <htl10>
Component: Font APIAssignee: Chris Liddell (chrisl) <chris.liddell>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P4    
Version: 0.00   
Hardware: PC   
OS: Linux   
Customer: Word Size: ---

Description Hin-Tak Leung 2010-05-22 20:05:52 UTC
r11302 built with ./configure --disable-freetype && make clean && make UFST_BRIDGE=1 UFST_ROOT=../ufst UFST_CFLAGS=-DGCCx86 UFST_LIB_EXT=.a .

running with -dDisableFAPI=true www.belldandy.idv.hk/GS/source.pdf
(test file in bug 690029) is fine, but using the FAPI gives an immediate segfault:

(gdb) bt
#0  0x000000000054709d in open_UFST ()
#1  0x0000000000547132 in ensure_open ()
#2  0x0000000000543621 in zFAPIpassfont ()
#3  0x0000000000483e46 in interp ()
#4  0x000000000048562b in gs_interpret ()
#5  0x000000000047a2ec in gs_main_run_string_end ()
#6  0x000000000047b34e in run_string ()
#7  0x000000000047ba9e in runarg ()
#8  0x000000000047d41c in gs_main_init_with_args ()
#9  0x000000000040a844 in main ()

I removed the object file and just compile that object with -g and re-make, and give this:


Program received signal SIGSEGV, Segmentation fault.
0x000000000054709d in open_UFST (r=<value optimized out>, server_param=<value optimized out>, server_param_size=<value optimized out>)
    at ./psi/fapiufst.c:190
190		emprintf(r->ff->memory,

#0  0x000000000054709d in open_UFST (r=<value optimized out>, server_param=<value optimized out>, server_param_size=<value optimized out>)
    at ./psi/fapiufst.c:190
#1  0x0000000000547132 in ensure_open (server=0x16a54a0, server_param=<value optimized out>, server_param_size=<value optimized out>)
    at ./psi/fapiufst.c:207
#2  0x0000000000543621 in zFAPIpassfont ()

This is on x86_64 linux.
Comment 1 Hin-Tak Leung 2010-05-22 20:10:10 UTC
Hmm, emprintf() comes from r11176 from Robin as part of the "remove global variables" initiative. Probably related to bug 691333.
Comment 2 Hin-Tak Leung 2010-05-22 20:25:31 UTC
the ufst code was r3252 (commit from chris 11 days ago).
Comment 3 Chris Liddell (chrisl) 2010-05-25 10:23:10 UTC
Resolved with revision 11319