On 10/17/06, Philip Ganchev <[EMAIL PROTECTED]> wrote:
> On 10/16/06, Axel Liljencrantz <[EMAIL PROTECTED]> wrote:
> > On 10/16/06, Philip Ganchev <[EMAIL PROTECTED]> wrote:
> > > It seems to be caused by fishd (darcs version) having trouble reading
> > > file ~/.fishd-* .  If the file is removed or a daemon is already
> > > running, Fish (either version) starts normally.  If the file exists,
> > > fishd goes into a loop, regardless whether the file is completely
> > > empty (crated by ``touch''), or contains just header comments (created
> > > when ``fishd'' exits having no universal variables at all), or
> > > contains all the usual ``set'' commands.
> >
> > Can the darcs version of fishd read it's own .fishd-* file? (I.e. if
> > you start darcs-fishd with no .fishd-* file, can it be restarted
> > without hanging?)
>
> No.
>
> One other strange thing happens from the darcs directory only.
>
> bash$ ps -C fish
>   PID TTY          TIME CMD
> bash$ ps -C fishd
>   PID TTY          TIME CMD
> bash$ cat ~/.fishd.ganchev
> # This file is automatically generated by the fishd universal variable daemon.
> # Do NOT edit it directly, your changes will be overwritten.
> SET fish_color_match:cyan
> SET fish_color_error:red\x1e--bold
> SET fish_pager_color_progress:cyan
> SET fish_color_operator:cyan
> SET fish_color_escape:cyan
> SET fish_color_quote:brown
> SET fish_color_command:green
> SET fish_color_valid_path:--underline
> SET fish_color_normal:normal
> SET fish_pager_color_completion:normal
> SET fish_color_search_match:purple
> bash$
> bash$ less ~/.fishd.ganchev
> read: Connection reset by peer
> read: Connection reset by peer
> read: Connection reset by peer
>
> Meanwhile, at another bash terminal (and another directory)...
>
> bash2$ ps -C fish
>   PID TTY          TIME CMD
> 21361 pts/0    00:00:00 fish
> bash2$ ps -C fishd
>   PID TTY          TIME CMD
> 21364 ?        00:00:03 fishd
> bash2$
> bash2$ killall fish
>
> And now back at the first terminal, "less" shows me the contents of
> ~/.fishd.ganchev exactly identical to those displayed by "cat".
>
> bash$ ls -l /home/philip/.fishd.ganchev
> -rw------- 1 philip philip 489 2006-10-16 13:35 /home/philip/.fishd.ganchev
> bash$ file !$
> file /home/philip/.fishd.ganchev
> /home/philip/.fishd.ganchev: ASCII English text
>
>
>
> > What access rights does the .fishd-* file have?
>
> User read and write.
>
>
> > What files is the fishd-process reading? (This can be seen using 'll
> > /proc/(echo %fishd)/fd')
>
> bash$ xterm&
> bash$ pid=$(ps -C fishd --no-header --format=pid); ps $pid; ls -l 
> /proc/$pid/fd/
>   PID TTY      STAT   TIME COMMAND
> 23337 ?        Rs     0:02 fishd
> total 3
> lr-x------ 1 philip philip 64 2006-10-16 14:16 0 -> 
> /home/philip/.fishd.ganchev
> l-wx------ 1 philip philip 64 2006-10-16 14:16 2 -> /tmp/fishd.log.philip*
> lrwx------ 1 philip philip 64 2006-10-16 14:16 3 -> socket:[114371]
>
>
> > If you replace the line
> >
> > #define FISHD_CMD L"if which fishd 2>/dev/null >/dev/null; fishd
> > ^/tmp/fishd.log.%s; end"
> >
> > with
> >
> > #define FISHD_CMD L"if which fishd 2>/dev/null >/dev/null; strace
> > fishd ^/tmp/fishd.log.%s; end"
> >
> > in env.c, and then recomplie fish and install the new fish version,
> > exit _all_ old fish shells (this is important), and restart fishd,
> > what does the /tmp/fishd.log.HOSTNAME look like? (This may cause fish
> > to enter an infinite loop with output, so be careful to avoid filling
> > your disk)
>
> bash$ rm ~/.fishd.asparuh
> bash$ xterm -e darcs/fish & tail -f /tmp/fishd.log.philip
> write(2, "n", 1n)                        = 1
> write(2, "o", 1o)                        = 1
> write(2, "r", 1r)                        = 1
> write(2, "m", 1m)                        = 1
> write(2, "a", 1a)                        = 1
> write(2, "l", 1l)                        = 1
> write(2, ")", 1))                        = 1
> write(2, "\n", 1)                       = 1
> exit_group(0)                           = ?
>
> bash$ # Now with an endless loop
> execve("./fishd", ["fishd"], [/* 39 vars */]) = 0
> uname({sys="Linux", node="asparuh", ...}) = 0
> brk(0)                                  = 0x8053000
> old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0xb7f77000
> access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
> directory)
> old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0xb7f76000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or 
> directory)
> old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0xb7f75000
> open("/afs/cs.pitt.edu/usr0/philip/lib/tls/i686/cmov/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/tls/i686/cmov", 0xbfa767c4) =
> -1 ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/tls/i686/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/tls/i686", 0xbfa767c4) = -1
> ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/tls/cmov/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/tls/cmov", 0xbfa767c4) = -1
> ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/tls/libncurses.so.5", O_RDONLY)
> = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/tls", 0xbfa767c4) = -1 ENOENT
> (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/i686/cmov/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/i686/cmov", 0xbfa767c4) = -1
> ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/i686/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/i686", 0xbfa767c4) = -1
> ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/cmov/libncurses.so.5",
> O_RDONLY) = -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib/cmov", 0xbfa767c4) = -1
> ENOENT (No such file or directory)
> open("/afs/cs.pitt.edu/usr0/philip/lib/libncurses.so.5", O_RDONLY) =
> -1 ENOENT (No such file or directory)
> stat64("/afs/cs.pitt.edu/usr0/philip/lib", 0xbfa767c4) = -1 ENOENT (No
> such file or directory)
> open("/etc/ld.so.cache", O_RDONLY)      = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=54239, ...}) = 0
> old_mmap(NULL, 54239, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f67000
> close(3)                                = 0
> access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
> directory)
> open("/lib/libncurses.so.5", O_RDONLY)  = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \343\0"..., 512) = 
> 512
> fstat64(3, {st_mode=S_IFREG|0644, st_size=262860, ...}) = 0
> old_mmap(NULL, 264108, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
> 3, 0) = 0xb7f26000
> old_mmap(0xb7f5e000, 32768, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x38000) = 0xb7f5e000
> old_mmap(0xb7f66000, 1964, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f66000
> close(3)                                = 0
> access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
> directory)
> open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220?0A"..., 512) = 
> 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size=1235732, ...}) = 0
> old_mmap(0x412ef000, 1238972, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x412ef000
> old_mmap(0x41414000, 28672, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x125000) = 0x41414000
> old_mmap(0x4141b000, 10172, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4141b000
> close(3)                                = 0
> access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
> directory)
> open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\373"..., 512) = 
> 512
> fstat64(3, {st_mode=S_IFREG|0644, st_size=9756, ...}) = 0
> old_mmap(0x419af000, 11016, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x419af000
> old_mmap(0x419b1000, 4096, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x419b1000
> close(3)                                = 0
> old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0xb7f25000
> set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f258e0,
> limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
> limit_in_pages:1, seg_not_
> munmap(0xb7f67000, 54239)               = 0
> brk(0)                                  = 0x8053000
> brk(0x8074000)                          = 0x8074000
> open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1
> ENOENT (No such file or directory)
> open("/usr/share/locale/locale.alias", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=2586, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0xb7f74000
> read(3, "# Locale name alias data base.\n#"..., 4096) = 2586
> read(3, "", 4096)                       = 0
> close(3)                                = 0
> munmap(0xb7f74000, 4096)                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_IDENTIFICATION", O_RDONLY) = -1
> ENOENT (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_IDENTIFICATION", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=373, ...}) = 0
> mmap2(NULL, 373, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f74000
> close(3)                                = 0
> open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/gconv/gconv-modules", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=45568, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0xb7f73000
> read(3, "# GNU libc iconv configuration.\n"..., 4096) = 4096
> read(3, "lias\tJS//\t\t\tJUS_I.B1.002//\nalias"..., 4096) = 4096
> read(3, "ule\tINTERNAL\t\tISO-8859-3//\t\tISO8"..., 4096) = 4096
> read(3, "lias\tISO-IR-199//\t\tISO-8859-14//"..., 4096) = 4096
> read(3, "\t\tto\t\t\tmodule\t\tcost\nalias\tCSEBCD"..., 4096) = 4096
> read(3, "ule\t\tcost\nalias\tCP284//\t\t\tIBM284"..., 4096) = 4096
> read(3, "lias\tCP864//\t\t\tIBM864//\nalias\t86"..., 4096) = 4096
> read(3, "module\tIBM937//\t\tINTERNAL\t\tIBM93"..., 4096) = 4096
> read(3, "\tEUC-JP//\nalias\tUJIS//\t\t\tEUC-JP/"..., 4096) = 4096
> read(3, "module\t\tcost\nalias\tISO-IR-143//\t"..., 4096) = 4096
> read(3, "-BOX//\nmodule\tISO_10367-BOX//\t\tI"..., 4096) = 4096
> read(3, "module\tINTERNAL\t\tEUC-JISX0213//\t"..., 4096) = 512
> read(3, "", 4096)                       = 0
> close(3)                                = 0
> munmap(0xb7f73000, 4096)                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_MEASUREMENT", O_RDONLY) = -1
> ENOENT (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_MEASUREMENT", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=23, ...}) = 0
> mmap2(NULL, 23, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f73000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_TELEPHONE", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_TELEPHONE", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=59, ...}) = 0
> mmap2(NULL, 59, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f72000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_ADDRESS", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_ADDRESS", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=155, ...}) = 0
> mmap2(NULL, 155, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f71000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_NAME", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_NAME", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=77, ...}) = 0
> mmap2(NULL, 77, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f70000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_PAPER", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_PAPER", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=34, ...}) = 0
> mmap2(NULL, 34, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f6f000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_MESSAGES", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_MESSAGES", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> close(3)                                = 0
> open("/usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=52, ...}) = 0
> mmap2(NULL, 52, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f6e000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_MONETARY", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_MONETARY", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=286, ...}) = 0
> mmap2(NULL, 286, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f6d000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_COLLATE", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_COLLATE", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=880086, ...}) = 0
> mmap2(NULL, 880086, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e4e000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_TIME", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_TIME", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=2451, ...}) = 0
> mmap2(NULL, 2451, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f6c000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_NUMERIC", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_NUMERIC", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=54, ...}) = 0
> mmap2(NULL, 54, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f6b000
> close(3)                                = 0
> open("/usr/lib/locale/en_US.UTF-8/LC_CTYPE", O_RDONLY) = -1 ENOENT (No
> such file or directory)
> open("/usr/lib/locale/en_US.utf8/LC_CTYPE", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=208464, ...}) = 0
> mmap2(NULL, 208464, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e1b000
> close(3)                                = 0
> uname({sys="Linux", node="asparuh", ...}) = 0
> getpid()                                = 9867
> unlink("/tmp/fishd.socket.philip.lock.asparuh.9867") = -1 ENOENT (No
> such file or directory)
> open("/tmp/fishd.socket.philip.lock.asparuh.9867", O_RDONLY|O_CREAT, 07) = 3
> close(3)                                = 0
> stat64("/tmp/fishd.socket.philip.lock.asparuh.9867",
> {st_mode=S_IFREG|05, st_size=0, ...}) = 0
> gettimeofday({1161035058, 446641}, NULL) = 0
> link("/tmp/fishd.socket.philip.lock.asparuh.9867",
> "/tmp/fishd.socket.philip.lock") = 0
> unlink("/tmp/fishd.socket.philip.lock.asparuh.9867") = 0
> _llseek(2, 0, [11003], SEEK_CUR)        = 0
> fstat64(2, {st_mode=S_IFREG|0755, st_size=11044, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0xb7e1a000
> fstat64(2, {st_mode=S_IFREG|0755, st_size=11190, ...}) = 0
> mmap2(NULL, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1, 0) = 0xb7e16000
> munmap(0x4141a0d4, 4096)                = -1 EINVAL (Invalid argument)
> write(2, "f", 1f)                        = 1
> write(2, "i", 1i)                        = 1
> write(2, "s", 1s)                        = 1
> write(2, "h", 1h)                        = 1
> write(2, "d", 1d)                        = 1
> write(2, ":", 1:)                        = 1
> write(2, " ", 1 )                        = 1
> write(2, "C", 1C)                        = 1
> write(2, "o", 1o)                        = 1
> write(2, "n", 1n)                        = 1
> write(2, "n", 1n)                        = 1
> write(2, "e", 1e)                        = 1
> write(2, "c", 1c)                        = 1
> write(2, "t", 1t)                        = 1
> write(2, " ", 1 )                        = 1
> write(2, "t", 1t)                        = 1
> write(2, "o", 1o)                        = 1
> write(2, " ", 1 )                        = 1
> write(2, "s", 1s)                        = 1
> write(2, "o", 1o)                        = 1
> write(2, "c", 1c)                        = 1
> write(2, "k", 1k)                        = 1
> write(2, "e", 1e)                        = 1
> write(2, "t", 1t)                        = 1
> write(2, " ", 1 )                        = 1
> write(2, "a", 1a)                        = 1
> write(2, "t", 1t)                        = 1
> write(2, " ", 1 )                        = 1
> write(2, "/", 1/)                        = 1
> write(2, "t", 1t)                        = 1
> write(2, "m", 1m)                        = 1
> write(2, "p", 1p)                        = 1
> write(2, "/", 1/)                        = 1
> write(2, "f", 1f)                        = 1
> write(2, "i", 1i)                        = 1
> write(2, "s", 1s)                        = 1
> write(2, "h", 1h)                        = 1
> write(2, "d", 1d)                        = 1
> write(2, ".", 1.)                        = 1
> write(2, "s", 1s)                        = 1
> write(2, "o", 1o)                        = 1
> write(2, "c", 1c)                        = 1
> write(2, "k", 1k)                        = 1
> write(2, "e", 1e)                        = 1
> write(2, "t", 1t)                        = 1
> write(2, ".", 1.)                        = 1
> write(2, "p", 1p)                        = 1
> write(2, "h", 1h)                        = 1
> write(2, "i", 1i)                        = 1
> write(2, "l", 1l)                        = 1
> write(2, "i", 1i)                        = 1
> write(2, "p", 1p)                        = 1
> write(2, "\n", 1
> )                       = 1
> socket(PF_FILE, SOCK_STREAM, 0)         = 3
> connect(3, {sa_family=AF_FILE, path="/tmp/fishd.socket.philip"}, 110)
> = -1 ECONNREFUSED (Connection refused)
> unlink("/tmp/fishd.socket.philip")      = 0
> bind(3, {sa_family=AF_FILE, path="/tmp/fishd.socket.philip"}, 110) = 0
> fcntl64(3, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
> listen(3, 64)                           = 0
> unlink("/tmp/fishd.socket.philip.lock") = 0
> clone(fishd: Error while reading universal variable after ''
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after ''
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after ''
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after '<U+0080>^F^Hj<U+0080>'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxj'
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxj'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j['
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA'
> mbrtowc: Invalid or incomplete multibyte or wide character
> fishd: Error while reading universal variable after
> '<U+0080>^F^Hj<U+0080>^F^HܚAA^F^H§jd0A(j,jW0A^D,AA(jjj^M<U+2869AA1A>AAxjl4A
> j[4AܚAA�'
> mbrtowc: Invalid or incomplete multibyte or wide character
>

This log is very helpful. See all the 'mbrtowc' lines? That is a
function to convert from multibyte narrow character sets to wide
character sets. If fishd is running into errors with this, it probably
means that there is an issue with the locale. I'm going to rewrite a
bit of code to make fish more stringent here, probably by making sure
that the on-the-wire character set is always UTF-8, even if the locale
is e.g. C.

I probably wasn't seeing this problem because none of my universal
variables contain non-ascii data. I'll be darned if I know why this
problem would be surfacing right now for both you and Martin,
though...

Anyway, thanks for the help. I hope to have a patch for this today or
tomorrow, hope you'll have time to try it out.

>
>
> Then the last line seems to repeat for the next 11106 lines.
>
>
> I don't know where the "/afs/cs.pitt.edu/usr0/philip/..." comes from;
> maybe in a log or something.  That's my directory on AFS, but no AFS
> client is running now and rarely ever.

That doesn't happen to be ~, or an alias for it, then?

>
>
> [...]
> > The fix for this and for the '.<Alt-backspace><space>' crash are in
> > the darcs tree. Hopefully, this also takes care of one of Martins
> > bugs.
>
> It does for me!!! :-)

Great. Thanks for letting me know.


-- 
Axel
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Fish-users mailing list
Fish-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fish-users

Reply via email to