From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21621 invoked from network); 23 Apr 2003 18:45:02 -0000 Received: from sunsite.dk (130.225.247.90) by ns1.primenet.com.au with SMTP; 23 Apr 2003 18:45:02 -0000 Received: (qmail 12563 invoked by alias); 23 Apr 2003 18:44:57 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 18467 Received: (qmail 12556 invoked from network); 23 Apr 2003 18:44:57 -0000 Received: from localhost (HELO sunsite.dk) (127.0.0.1) by localhost with SMTP; 23 Apr 2003 18:44:57 -0000 X-MessageWall-Score: 0 (sunsite.dk) Received: from [195.92.195.173] by sunsite.dk (MessageWall 1.0.8) with SMTP; 23 Apr 2003 18:44:57 -0000 Received: from modem-246.cleaner-wrasse.dialup.pol.co.uk ([62.136.246.246] helo=pwstephenson.fsnet.co.uk) by cmailg3.svr.pol.co.uk with esmtp (Exim 4.14) id 198PEl-0002LK-1A; Wed, 23 Apr 2003 19:44:55 +0100 Received: by pwstephenson.fsnet.co.uk (Postfix, from userid 501) id B3D0F1B76A; Wed, 23 Apr 2003 18:49:38 +0100 (BST) Received: from pwstephenson.fsnet.co.uk (localhost [127.0.0.1]) by pwstephenson.fsnet.co.uk (Postfix) with ESMTP id A6C481B769; Wed, 23 Apr 2003 18:49:38 +0100 (BST) To: "Haakon Riiser" , zsh-workers@sunsite.dk Subject: Re: Segmentation fault caused by completion system In-reply-to: ""Haakon Riiser""'s message of "Thu, 17 Apr 2003 18:02:34 +0200." <20030417160234.GA4940@s> Date: Wed, 23 Apr 2003 18:49:33 +0100 From: Peter Stephenson Message-Id: <20030423174938.B3D0F1B76A@pwstephenson.fsnet.co.uk> "Haakon Riiser" wrote: > "*" in front of "-+" or "+-" in the optspecs to "_arguments" > causes a segmentation fault on completion. This appears to be a trivial fix. Index: Src/Zle/computil.c =================================================================== RCS file: /cvsroot/zsh/zsh/Src/Zle/computil.c,v retrieving revision 1.83 diff -u -r1.83 computil.c --- Src/Zle/computil.c 27 Aug 2002 21:10:34 -0000 1.83 +++ Src/Zle/computil.c 23 Apr 2003 18:43:45 -0000 @@ -1397,7 +1397,7 @@ opt->descr = NULL; } else opt->descr = NULL; - opt->xor = (again == 1 ? zarrdup(xor) : xor); + opt->xor = (again == 1 && xor ? zarrdup(xor) : xor); opt->type = otype; opt->args = oargs; opt->num = nopts++; -- Peter Stephenson Work: pws@csr.com Web: http://www.pwstephenson.fsnet.co.uk