From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10759 invoked by alias); 9 Mar 2017 05:18:03 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 40799 Received: (qmail 4710 invoked from network); 9 Mar 2017 05:18:03 -0000 X-Qmail-Scanner-Diagnostics: from mail-ua0-f195.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(209.85.217.195):SA:0(0.5/5.0):. Processed in 1.298706 secs); 09 Mar 2017 05:18:03 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=0.5 required=5.0 tests=RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,RCVD_IN_SORBS_SPAM,SPF_PASS, T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.1 X-Envelope-From: schaefer@brasslantern.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at _netblocks.google.com designates 209.85.217.195 as permitted sender) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20150623.gappssmtp.com; s=20150623; h=from:message-id:date:in-reply-to:comments:references:to:subject :mime-version; bh=CqnqFYVzo4C7HqTqYM7zbVj4JieO1M6A2qMNfE5vCKs=; b=1X2o+S2APwKC3XezXKV8I3mswTg+Cm6jlZluW7Q+j/DgnNXoRQzzlvMBDdxysWxLgT 08qo854PvruGMLU3Z5CO/BxOgcK/EIBTrVQsyNT3LE+34gsmN8ub2qpAilzO5QMy4XOA p/grBJ2vkLoTtOkmYIacq+buHyQCdMIflEUHShNRl43eeftjjGJYJO4Jy+KqfeIrqvQd EuJQloZxhjD/4pVd8gX0NJ4rFVdyPpLlmJmIeQ+1G+4fEVZ5b8xFjY34/XRatyPNs1Ha FCNMwXY/CNo7ZWldXdNEBV9AKUzMlSfNe74Vh4uXxfddbpZaloKyXzfj9GvXY/uP+2OI 1qNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:date:in-reply-to:comments :references:to:subject:mime-version; bh=CqnqFYVzo4C7HqTqYM7zbVj4JieO1M6A2qMNfE5vCKs=; b=aDiRE6shWuuwdPyvoW/rJqCHAocNujLQjGZJ6fkU8bJyrKpaE+eR3jtsZU1jn1cm3s JDbgtVVZSIUx5vGnCP+5x5+jgeS6kH+CoB+uxqFow4jCGVjvYLg9kFT/GAqNT+yfy3OD eP1aEYvoWg6Sbuz+bLRczN3JSGKhgD2/sT4sR9ncP/8ZhcOw29373iIh0BIW92k95DYo MaPScgOyVzWAEKaXYaBRYhymkqNkoAA16J0FYCE4i86wYQIFapMe8S39fS3h8KJFLdF0 YQ5vid4bFdKpo9hbhLNT/xh8kcQcQL7zbmLFb8PezgYdbdW2LwO2ehWA4j51XN5Z3sKJ YfbQ== X-Gm-Message-State: AMke39kchOGxsfViAiRvX7EFtd05SavVwGW2brPEMZ5J17H3/T3lFkrECrt2UBwMDOnLfw== X-Received: by 10.176.69.5 with SMTP id r5mr6499677uar.56.1489036675940; Wed, 08 Mar 2017 21:17:55 -0800 (PST) From: Bart Schaefer Message-Id: <170308211822.ZM27099@torch.brasslantern.com> Date: Wed, 8 Mar 2017 21:18:22 -0800 In-Reply-To: Comments: In reply to Martijn Dekker "Re: [^ax-y] doesn't work but [^x-ya] does" (Mar 8, 7:12pm) References: <1488440005.4187177.897775384.2538F781@webmail.messagingengine.com> <20170302104710.6eed8ece@pwslap01u.europe.root.pri> <1488453733.41855.897947392.73E9E4B0@webmail.messagingengine.com> <20170302115308.5a8fccfa@pwslap01u.europe.root.pri> <170304152143.ZM30786@torch.brasslantern.com> <20170306112830.22d68831@pwslap01u.europe.root.pri> <20170307105149.30148b02@pwslap01u.europe.root.pri> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: Martijn Dekker , Peter Stephenson , Zsh hackers list Subject: Re: [^ax-y] doesn't work but [^x-ya] does MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii On Mar 8, 7:12pm, Martijn Dekker wrote: } } Commit f3f8537c breaks unquoted $-: We get here: #0 fetchvalue (v=0xbff07f00, pptr=0xbff07f64, bracks=1, flags=0) at ../../zsh-5.0/Src/params.c:1969 #1 0x080de7db in paramsubst (l=0xb7d68778, n=0xb7d68790, str=0xbff07fd8, qt=0, pf_flags=0, ret_flags=0xbff0813c) at ../../zsh-5.0/Src/subst.c:2418 #2 0x080dacff in stringsubst (list=0xb7d68778, node=0xb7d68790, pf_flags=0, ret_flags=0xbff0813c, asssub=0) at ../../zsh-5.0/Src/subst.c:247 #3 0x080da47d in prefork (list=0xb7d68778, flags=0, ret_flags=0xbff0813c) at ../../zsh-5.0/Src/subst.c:85 With pptr still pointing at "\233" (Dash). Hopefully the following doesn't re-break anything else. diff --git a/Src/params.c b/Src/params.c index b89fb74..bee01c5 100644 --- a/Src/params.c +++ b/Src/params.c @@ -1987,7 +1987,9 @@ fetchvalue(Value v, char **pptr, int bracks, int flags) *s++ = '$'; else if (c == Star) *s++ = '*'; - else if (c == '#' || c == '-' || c == '?' || c == '$' || + else if (IS_DASH(c)) + *s++ = '-'; + else if (c == '#' || c == '?' || c == '$' || c == '!' || c == '@' || c == '*') s++; else