Hmmm... that seems to be the point, at least for you.
My problem: I don't have a .Xdefaults in my user home directory either! And it crashes nonetheless.
But you are right, here's a part of the strace log from the working configuration (root):
Code: Select all
read(3, "\1\377\r\0\247\0\0\0\22\0\0\0\1\0\0\0\7\0\0\0\f\0\0\0\1"..., 32) = 32
brk(0) = 0x85f3000
brk(0x85f4000) = 0x85f4000
read(3, "W\0\0\0\1\1\22\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\0"..., 668) = 668
brk(0) = 0x85f4000
brk(0x85f6000) = 0x85f6000
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/root/.Xdefaults", O_RDONLY) = -1 ENOENT (No such file or directory)
uname({sys="Linux", node="Gentoo", ...}) = 0
open("/root/.Xdefaults-Gentoo", O_RDONLY) = -1 ENOENT (No such file or directory)
Here is the none-working configuration (user):
Code: Select all
read(3, "\1\377\r\0\247\0\0\0\22\0\0\0\1\0\0\0\7\0\0\0\f\0\0\0\1"..., 32) = 32
read(3, "W\0\0\0\1\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\0\0"..., 668) = 668
open("/usr/X11R6/lib/X11/locale/locale.alias", O_RDONLY) = 4
fstat64(4, {st_mode=S_IFREG|0444, st_size=37675, ...}) = 0
mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4030b000
read(4, "#\t$TOG: locale.alias /main/33 19"..., 131072) = 37675
read(4, "", 131072) = 0
close(4) = 0
munmap(0x4030b000, 131072) = 0
open("/usr/X11R6/lib/X11/locale/locale.dir", O_RDONLY) = 4
fstat64(4, {st_mode=S_IFREG|0444, st_size=30409, ...}) = 0
mmap2(NULL, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4030b000
read(4, "#\t$TOG: locale.dir /main/13 1998"..., 131072) = 30409
close(4) = 0
munmap(0x4030b000, 131072) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
As you can see, the last two identical lines both logs have are:
Code: Select all
read(3, "\1\377\r\0\247\0\0\0\22\0\0\0\1\0\0\0\7\0\0\0\f\0\0\0\1"..., 32) = 32
read(3, "W\0\0\0\1\1\22\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\0"..., 668) = 668
,
but root has also the lines
Code: Select all
brk(0) = 0x85f3000
brk(0x85f4000) = 0x85f4000
in-between.
So far, so good. But then there are the two paths:
1. Root: The missing .Xdefaults is being "complained", but the error is overridden and the game starts!
2. User: Even though the .Xdefaults are also missing, JA2 doesn't care about it at all(?!!!), but hangs at that "locale"-stuff.
I don't get it! Why on earth is the behaviour different?
I guess it must be the brk-lines I get as root, but not as the user.
Damn!
