* [UNFINISHED] email to zsh @ 2005-06-29 4:26 Mac-arena the Bored Zo 2005-06-29 10:15 ` Peter Stephenson 2005-07-01 14:44 ` Peter Stephenson 0 siblings, 2 replies; 10+ messages in thread From: Mac-arena the Bored Zo @ 2005-06-29 4:26 UTC (permalink / raw) To: zsh-workers [-- Attachment #1.1: Type: text/plain, Size: 5326 bytes --] 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@softhome.net PGP public key ID: 328A4FCC [-- Attachment #1.2: Type: text/html, Size: 7873 bytes --] [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 186 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [UNFINISHED] email to zsh 2005-06-29 4:26 [UNFINISHED] email to zsh Mac-arena the Bored Zo @ 2005-06-29 10:15 ` Peter Stephenson 2005-06-29 10:28 ` Mac-arena the Bored Zo 2005-07-01 14:44 ` Peter Stephenson 1 sibling, 1 reply; 10+ messages in thread From: Peter Stephenson @ 2005-06-29 10:15 UTC (permalink / raw) To: Mac-arena the Bored Zo, zsh-workers Mac-arena the Bored Zo wrote: > 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 Can't get this on my system, even with the simplified compctl form: could you send a full directory listing? -- Peter Stephenson <pws@csr.com> Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070 ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ********************************************************************** ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-06-29 10:15 ` Peter Stephenson @ 2005-06-29 10:28 ` Mac-arena the Bored Zo 2005-06-29 11:39 ` Peter Stephenson 0 siblings, 1 reply; 10+ messages in thread From: Mac-arena the Bored Zo @ 2005-06-29 10:28 UTC (permalink / raw) To: Peter Stephenson; +Cc: zsh-workers [-- Attachment #1: Type: text/plain, Size: 414 bytes --] (oops, forgot to remove that '[UNFINISHED]' tag. I always forget something like that. sorry.) On Jun 29, 2005, at 03:15 AM, Peter Stephenson wrote: > Can't get this on my system, even with the simplified compctl form: > could you send a full directory listing? of what directory? _________________________________________________ \ Mac-arena the Bored Zo / macrulez@softhome.net PGP public key ID: 328A4FCC [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 186 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-06-29 10:28 ` Mac-arena the Bored Zo @ 2005-06-29 11:39 ` Peter Stephenson 2005-06-29 13:03 ` Mac-arena the Bored Zo 0 siblings, 1 reply; 10+ messages in thread From: Peter Stephenson @ 2005-06-29 11:39 UTC (permalink / raw) To: Mac-arena the Bored Zo, Zsh hackers list Mac-arena the Bored Zo wrote: > On Jun 29, 2005, at 03:15 AM, Peter Stephenson wrote: > > Can't get this on my system, even with the simplified compctl form: > > could you send a full directory listing? > > of what directory? The one it's completing in when it crashes. compctl isn't sensitive to the higher directories: compsys might be but it doesn't explain the other crash. pws ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ********************************************************************** ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-06-29 11:39 ` Peter Stephenson @ 2005-06-29 13:03 ` Mac-arena the Bored Zo 0 siblings, 0 replies; 10+ messages in thread From: Mac-arena the Bored Zo @ 2005-06-29 13:03 UTC (permalink / raw) To: Peter Stephenson; +Cc: Zsh hackers list [-- Attachment #1: Type: text/plain, Size: 743 bytes --] On Jun 29, 2005, at 04:39 AM, Peter Stephenson wrote: > Mac-arena the Bored Zo wrote: >> On Jun 29, 2005, at 03:15 AM, Peter Stephenson wrote: >>> Can't get this on my system, even with the simplified compctl >>> form: could you send a full directory listing? >> >> of what directory? > > The one it's completing in when it crashes. compctl isn't > sensitive to the higher directories: compsys might be but it > doesn't explain the other crash. mine is a clean checkout, so it's all of these files: http://trac.adiumx.com/browser/trunk/Plugins/WebKit%20Message%20View? rev=12614 plus the .svn directory. _________________________________________________ \ Mac-arena the Bored Zo / macrulez@softhome.net PGP public key ID: 328A4FCC [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 186 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-06-29 4:26 [UNFINISHED] email to zsh Mac-arena the Bored Zo 2005-06-29 10:15 ` Peter Stephenson @ 2005-07-01 14:44 ` Peter Stephenson 2005-07-06 9:50 ` Peter Stephenson 1 sibling, 1 reply; 10+ messages in thread From: Peter Stephenson @ 2005-07-01 14:44 UTC (permalink / raw) To: Mac-arena the Bored Zo, Zsh hackers list Mac-arena the Bored Zo wrote: > 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. I can get this now. From zsh -f, any recent version, in an empty directory: files=(AIWebKitMessageViewController.m AIWebKitMessageViewPlugin.m AIWebkitMessageViewStyle.m) touch $files chmod +x *.m compctl -M '' 'm:{a-zA-Z}={A-Za-z}' ./AIWebKitMessagep then TAB will cause it to happen. I think the compctl -M is the key: it's somewhere in the hairy matcher code. -- Peter Stephenson <pws@csr.com> Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070 ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ********************************************************************** ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-07-01 14:44 ` Peter Stephenson @ 2005-07-06 9:50 ` Peter Stephenson 2005-07-06 15:41 ` Bart Schaefer 0 siblings, 1 reply; 10+ messages in thread From: Peter Stephenson @ 2005-07-06 9:50 UTC (permalink / raw) To: Mac-arena the Bored Zo, Zsh hackers list Peter Stephenson wrote: > I can get this now. From zsh -f, any recent version, in an empty > directory: > > files=(AIWebKitMessageViewController.m > AIWebKitMessageViewPlugin.m > AIWebkitMessageViewStyle.m) > touch $files > chmod +x *.m > compctl -M '' 'm:{a-zA-Z}={A-Za-z}' > ./AIWebKitMessagep > > then TAB will cause it to happen. I think the compctl -M is the key: > it's somewhere in the hairy matcher code. This seems to fix the problem, and allow the completion to work as expected, though I haven't a clue what the code I've fixed is doing. Index: Src/Zle/compmatch.c =================================================================== RCS file: /cvsroot/zsh/zsh/Src/Zle/compmatch.c,v retrieving revision 1.42 diff -u -r1.42 compmatch.c --- Src/Zle/compmatch.c 4 Jun 2004 06:00:40 -0000 1.42 +++ Src/Zle/compmatch.c 6 Jul 2005 09:47:39 -0000 @@ -803,14 +803,26 @@ /* Probably add the matched strings. */ if (!test) { if (sfx) - add_match_str(NULL, NULL, w, ow - w, sfx); + { + if (ow >= w) + add_match_str(NULL, NULL, w, ow - w, sfx); + } else - add_match_str(NULL, NULL, ow, w - ow, sfx); + { + if (w >= ow) + add_match_str(NULL, NULL, ow, w - ow, sfx); + } add_match_str(mp, tl, tw, mp->wlen, sfx); if (sfx) - add_match_sub(NULL, NULL, 0, w, ow - w); + { + if (ow >= w) + add_match_sub(NULL, NULL, 0, w, ow - w); + } else - add_match_sub(NULL, NULL, 0, ow, w - ow); + { + if (w >= ow) + add_match_sub(NULL, NULL, 0, ow, w - ow); + } add_match_sub(mp, tl, mp->llen, tw, mp->wlen); } if (sfx) { -- Peter Stephenson <pws@csr.com> Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070 ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ********************************************************************** ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-07-06 9:50 ` Peter Stephenson @ 2005-07-06 15:41 ` Bart Schaefer 2005-07-06 15:56 ` Peter Stephenson 0 siblings, 1 reply; 10+ messages in thread From: Bart Schaefer @ 2005-07-06 15:41 UTC (permalink / raw) To: Zsh hackers list On Jul 6, 10:50am, Peter Stephenson wrote: } Subject: Re: email to zsh } } Peter Stephenson wrote: } This seems to fix the problem, and allow the completion to work as } expected, though I haven't a clue what the code I've fixed is doing. As best I can tell, ow and w are supposed to bound a region of the original string (from the command line) that is being added as a match; add_match_str() sets up the fragment that matched the pattern, and add_match_sub() sets up the fragment that should be inserted into the command line to replace it (which in this case is the original text, so the calls are the same). sfx indicates whether this is a prefix or suffix match. In that case w should be tracking backwards from ow towards the beginning of the string, otherwise w should be tracking forwards from ow. At the end of the inner loop ow = w is assigned, so the only way they ever move apart is if one of the "continue" statements is hit. So if you arrive at this point with (sfx && w > ow) || (!sfx && ow > w) then there has already been an error somewhere else, and all that this patch will do is mask that error to prevent a crash. I don't have time right now to look at it any more closely ... ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-07-06 15:41 ` Bart Schaefer @ 2005-07-06 15:56 ` Peter Stephenson 2005-07-07 8:07 ` Felix Rosencrantz 0 siblings, 1 reply; 10+ messages in thread From: Peter Stephenson @ 2005-07-06 15:56 UTC (permalink / raw) To: Zsh hackers list Bart Schaefer wrote: > So if you arrive at this point with (sfx && w > ow) || (!sfx && ow > w) > then there has already been an error somewhere else, and all that this > patch will do is mask that error to prevent a crash. That always seemed highly likely, but until someone has six weeks to work out what the function is doing... -- Peter Stephenson <pws@csr.com> Software Engineer CSR PLC, Churchill House, Cambridge Business Park, Cowley Road Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070 ********************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager. ********************************************************************** ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: email to zsh 2005-07-06 15:56 ` Peter Stephenson @ 2005-07-07 8:07 ` Felix Rosencrantz 0 siblings, 0 replies; 10+ messages in thread From: Felix Rosencrantz @ 2005-07-07 8:07 UTC (permalink / raw) To: Zsh hackers list Seems like a good time to repost an outstanding problem from a year ago. This seems to be matching code related. -FR. zsh-workers/20057 http://www.zsh.org/mla/workers/2004/msg00707.html zsh -f autoload -U compinit; compinit -C zstyle ':completion:*' matcher-list 'r:|[ ]=** r:[^a-z]||[a-z]=**' mkdir bug; cd bug touch "steve green" "steve morrow" "peter stephenson" more st<TAB> peter\ stephenson steve\ green steve\ morrow more ./st<TAB> The first case looks correct. Though when I type <TAB> in the last case, it deletes the "st" and my line looks like: "more ./" I'm guessing it might be _path_files, because I get the error when it includes a leading path. ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2005-07-07 8:07 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2005-06-29 4:26 [UNFINISHED] email to zsh Mac-arena the Bored Zo 2005-06-29 10:15 ` Peter Stephenson 2005-06-29 10:28 ` Mac-arena the Bored Zo 2005-06-29 11:39 ` Peter Stephenson 2005-06-29 13:03 ` Mac-arena the Bored Zo 2005-07-01 14:44 ` Peter Stephenson 2005-07-06 9:50 ` Peter Stephenson 2005-07-06 15:41 ` Bart Schaefer 2005-07-06 15:56 ` Peter Stephenson 2005-07-07 8:07 ` Felix Rosencrantz
Code repositories for project(s) associated with this public inbox https://git.vuxu.org/mirror/zsh/ This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).