So, here is why SecurityLookupIDByType() fails. Basically, looks like the Hash() in NXresource.c is returning an index for "id" which is referencing 0x0.
Anybody got any clues? What does XCSECURITY have to do with default font? What kind of madness is this?
Breakpoint 1, SetDefaultFont (defaultfontname=0x703f11 "fixed") at NXdixfonts.c:221 221 NXdixfonts.c: No such file or directory. (gdb) b Hash Breakpoint 3 at 0x43b1a0: file NXresource.c, line 321. (gdb) c Continuing.
Breakpoint 3, Hash (client=client@entry=0, id=id@entry=127) at NXresource.c:321 321 NXresource.c: No such file or directory. (gdb) bt #0 Hash (client=client@entry=0, id=id@entry=127) at NXresource.c:321 #1 0x000000000043c3e7 in SecurityLookupIDByType (client=0x0, id=127, rtype=4, mode=0) at NXresource.c:1143 #2 0x000000000043c62e in LookupIDByType (id=<optimized out>, rtype=<optimized out>) at NXresource.c:1193 #3 0x0000000000421109 in SetDefaultFont (defaultfontname=0x703f11 "fixed") at NXdixfonts.c:231 #4 0x000000000040dd05 in main () (gdb) s 320 in NXresource.c (gdb) 336 in NXresource.c (gdb) p res No symbol "res" in current context. (gdb) p id $22 = 127 (gdb) p ((int)(0x3F&(id^(id>>6)^(id>>12)))) $24 = 62 (gdb) fini Run till exit from #0 Hash (client=client@entry=0, id=id@entry=127) at NXresource.c:336 0x000000000043c3e7 in SecurityLookupIDByType (client=0x0, id=127, rtype=4, mode=0) at NXresource.c:1143 1143 in NXresource.c Value returned is $25 = 62 (gdb) bt #0 0x000000000043c3e7 in SecurityLookupIDByType (client=0x0, id=127, rtype=4, mode=0) at NXresource.c:1143 #1 0x000000000043c62e in LookupIDByType (id=<optimized out>, rtype=<optimized out>) at NXresource.c:1193 #2 0x0000000000421109 in SetDefaultFont (defaultfontname=0x703f11 "fixed") at NXdixfonts.c:231 #3 0x000000000040dd05 in main () (gdb) p clientTable[cid].resources[62] $26 = (ResourcePtr) 0x0
-devsk