On Fri, 30 Apr 2004, hatky wrote:
basicly he says this patch is the problem: http://cvs.winehq.org/patch.py?id=12187
sounds right by what the patch is about, didn't try reversing it yet
Hm, maybe. Though I finally figured out on how to debug wineserver:
[s2@katleriai s2]$ gdb -q --args /usr/local/bin/wineserver -f -p (gdb) break file_read_error Breakpoint 1 at 0x805b91e: file registry.c, line 1114. (gdb) r Starting program: /usr/local/bin/wineserver -f -p
Breakpoint 1, file_read_error (err=0x806d146 "Malformed key", info=0xbffffa74) at registry.c:1114 1114 fprintf( stderr, "Line %d: %s '%s'\n", info->line, err, info->buffer ); (gdb) bt #0 file_read_error (err=0x806d146 "Malformed key", info=0xbffffa74) at registry.c:1114 #1 0x0805bd0d in load_key (base=0x80771d0, buffer=0x8077261 "wine]", flags=1, prefix_len=2, info=0xbffffa74, default_modif=1083324039) at registry.c:1234 #2 0x0805c390 in load_keys (key=0x80771d0, f=0x8076e00) at registry.c:1430 #3 0x0805c56a in init_registry () at registry.c:1508 #4 0x08052fc8 in main (argc=3, argv=0xbffffb14) at main.c:132 #5 0x42015967 in __libc_start_main () from /lib/i686/libc.so.6 (gdb) c Continuing. Line 8: Malformed key '[wine]'
Breakpoint 1, file_read_error (err=0x806d1ac "Error creating key", info=0xbffffa74) at registry.c:1114 1114 fprintf( stderr, "Line %d: %s '%s'\n", info->line, err, info->buffer ); (gdb) bt #0 file_read_error (err=0x806d1ac "Error creating key", info=0xbffffa74) at registry.c:1114 #1 0x0805c3ac in load_keys (key=0x80771d0, f=0x8076e00) at registry.c:1431 #2 0x0805c56a in init_registry () at registry.c:1508 #3 0x08052fc8 in main (argc=3, argv=0xbffffb14) at main.c:132 #4 0x42015967 in __libc_start_main () from /lib/i686/libc.so.6 (gdb) c Continuing. Line 8: Error creating key '[wine]'
I wonder now what does "+ 1" operation do inside the load_keys() in server/registry.c:
if (prefix_len == -1) prefix_len = get_prefix_len( key, p + 1, &info ); if (!(subkey = load_key( key, p + 1, flags, prefix_len, &info, default_modif )))
Last mod of the file is three months old, at least.