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:
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.
_________________________________________________
PGP public key ID: 328A4FCC