Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

[UNFINISHED] email to zsh



I am not on the list, so please CC me with any replies.

I'm running zsh 4.2.5 (built from sources) and 4.2.3 (stock Apple install) on Mac OS X 10.4.1. the bug existed in 10.4 as well. this is a consistently-repeatable crash.

my current working directory: /Users/boredzo/Projects/@otherpeoplesprojects/adium

I type:
    twe[tab: twedit] plug[tab: Plugins/]webk[tab: WebKit\ Message\ View/]aiwe[tab: AIWebKitMessageView]p[tab]

and it crashes (SIGSEGV). the full expansion, before the 'p', is:
    Plugins/WebKit Message View/AIWebKitMessageViewPlugin.m

there is no file 'Plugins/WebKit Message View/AIWebKitMessageViewPlugin.mp'; it was a typo. I recorded it for the sole reason that it's how to cause the crash. :)

this happened before I set up zshcompsys as well. my compctls:

compctl -g '*.z[12345678]' + frotz
compctl -g '*(/)' cd
hosts=(finch.fourx.org)
compctl -k hosts telnet ftp ssh
compctl -g '*.py' + -f python
compctl -M '' 'm:{a-zA-Z}={A-Za-z}'
bindkey "^I" expand-or-complete-prefix
bindkey "^X^I" expand-or-complete

it still happens with zshcompsys. since setting that up, I have removed the cd, python, and case-insensitivity compctls, and it did not help.

with zshcompsys, this also makes zsh crash:

twe[tab] plug/webk/aiwe[tab]p[tab]

my setopt output:

autocd
completeinword
correctall
interactive
nolistbeep
login
monitor
shinstdin
zle

with compctl, the crash log is:

Host Name:      Silent-Partner
Date/Time:      2005-05-05 04:04:49.967 -0700
OS Version:     10.4 (Build 8A428)
Report Version: 3

Command: zsh
Path:    /bin/zsh
Parent:  login [4228]

Version: ??? (???)

PID:    4229
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_INVALID_ADDRESS (0x0001) at 0x002fffff

Thread 0 Crashed:
0   <<00000000>>     0xffff8c6c __memcpy + 1228 (cpu_capabilities.h:189)
1   complete.so     0x000bdbdc revert_cline + 476
2   complete.so     0x000bede0 match_str + 3572
3   complete.so     0x000bf478 comp_match + 300
4   compctl.so      0x000d24ac compctlread + 14432
5   compctl.so      0x000d3024 getcpat + 1684
6   compctl.so      0x000d674c getcpat + 15804
7   compctl.so      0x000d3c28 getcpat + 4760
8   compctl.so      0x000d3b48 getcpat + 4536
9   compctl.so      0x000d38dc getcpat + 3916
10  compctl.so      0x000d1ebc compctlread + 12912
11  complete.so     0x000b7d08 after_complete + 6224
12  complete.so     0x000b5df4 do_completion + 996
13  zle.so          0x0009a55c inststrlen + 980
14  zle.so          0x00097b1c parambeg + 3932
15  zle.so          0x000965ec expandorcomplete + 252
16  zle.so          0x0009be6c expandorcompleteprefix + 40
17  zle.so          0x0008b3f0 execzlefunc + 540
18  zle.so          0x0008aac4 zlecore + 268
19  zle.so          0x0008b0f0 zleread + 1124
20  zsh             0x000299e0 ingetc + 752
21  zsh             0x0002982c ingetc + 316
22  zsh             0x00020a94 iaddtoline + 476
23  zsh             0x000301f8 gettok + 72
24  zsh             0x0002f7d4 yylex + 48
25  zsh             0x000464f0 parse_event + 76
26  zsh             0x000266c8 loop + 200
27  zsh             0x00029470 zsh_main + 596
28  zsh             0x00001d18 start + 412
29  zsh             0x00001bb8 start + 60

Thread 0 crashed with PPC Thread State:
  srr0: 0xffff8c6c srr1: 0x0200f030                vrsave: 0xff000000
    cr: 0x4802224a  xer: 0x20000004   lr: 0x000bdbdc  ctr: 0x03fffb6b
    r0: 0x00000002   r1: 0xbfffe780   r2: 0x00000000   r3: 0x00312516
    r4: 0x0006f220   r5: 0xffffffea   r6: 0xffffffef   r7: 0xffffffdf
    r8: 0xffffffcf   r9: 0xffffffff  r10: 0xffffff9f  r11: 0xffffff7f
   r12: 0x00300000  r13: 0x00000000  r14: 0x00000022  r15: 0x0000000e
   r16: 0x00081776  r17: 0x0000001e  r18: 0x00081768  r19: 0x00081756
   r20: 0x00000001  r21: 0x00000001  r22: 0x00000000  r23: 0x000cdaf8
   r24: 0x000c9af0  r25: 0x00081776  r26: 0x000c9398  r27: 0x00081756
   r28: 0x0030d850  r29: 0x000cdaf8  r30: 0xfffffffb  r31: 0x000bdaf8

Binary Images Description:
    0x1000 -    0x6dfff zsh     /bin/zsh
   0x83000 -    0xa4fff zle.so     /usr/lib/zsh/4.2.3/zsh/zle.so
   0xb2000 -    0xc8fff complete.so     /usr/lib/zsh/4.2.3/zsh/complete.so
   0xce000 -    0xd8fff compctl.so     /usr/lib/zsh/4.2.3/zsh/compctl.so
0x8fe00000 - 0x8fe50fff dyld 43    /usr/lib/dyld
0x90000000 - 0x901a6fff libSystem.B.dylib     /usr/lib/libSystem.B.dylib
0x901fe000 - 0x90202fff libmathCommon.A.dylib     /usr/lib/system/libmathCommon.A.dylib
0x92c9b000 - 0x92d89fff libiconv.2.dylib     /usr/lib/libiconv.2.dylib
0x9680c000 - 0x9683afff libncurses.5.4.dylib     /usr/lib/libncurses.5.4.dylib

with zshcompsys, the crash log is:

http://paste.lisp.org/display/9472 (this email would be over 20 K if I included it here.)

this is not a simple recursion-limit crash; it is worth pointing out that getfpfunc is called from all three of execif, execfor, and execwhile.

I have been unable to get debug symbols in zsh. I tried:

    CFLAGS=-g ./configure --with-curses-terminfo --enable-pcre --enable-zsh-secure-free
    (these being the same configure options I normally use)

but no source code references appeared in the crash log, nor debug symbols in the built executable.
_________________________________________________
\ Mac-arena the Bored Zo / macrulez@xxxxxxxxxxxx
PGP public key ID: 328A4FCC

Attachment: PGP.sig
Description: This is a digitally signed message part



Messages sorted by: Reverse Date, Date, Thread, Author