From mboxrd@z Thu Jan 1 00:00:00 1970
X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org
X-Spam-Level:
X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,
DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,
T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=ham
autolearn_force=no version=3.4.4
Received: (qmail 23020 invoked from network); 3 Mar 2022 11:53:02 -0000
Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368)
by inbox.vuxu.org with ESMTPUTF8; 3 Mar 2022 11:53:02 -0000
ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1646308382;
b=XOaFe9iBVONTj5eRjT6z6xnqU6S6JmlZT0oYWDqL13Rja4xhhBGCZ/Mw6eWLGgX2mUW3l07P5K
GEfS7PYzUvBYs2vja3GPyrOYhI/8OCyx502Hqdobqx/lWDqTaGfGEmKHkWTkyjDufoK8ZeWb1y
5jd7TXR8rd83z1uf1XhawKawIUKzet2iZ/eM9/khzBR4dkytXbrLfCvtsyL6hvnuEKG7DQejIF
rKagZQ+Lq8Pui8KfWli5izltSelrnRYSfIzKB3+5qdOYRWR4KLOcfj+xycYK5qdv4osT6qOTxu
mvjBqxpdeCYEf9Y17NZW91XVO2zNeTWqUe0oY+XSLej+pg==;
ARC-Authentication-Results: i=1; zsh.org;
iprev=pass (smtpq1.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.96;
dkim=pass header.d=ntlworld.com header.s=meg.feb2017 header.a=rsa-sha256;
dmarc=pass header.from=ntlworld.com;
arc=none
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1646308382;
bh=9NjnVQxDVo7+S5VZn7eg/Z6BAyBghwtS1FCknzmmNLk=;
h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help:
List-Id:Sender:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:
References:In-Reply-To:Message-ID:To:From:Date:DKIM-Signature:
DKIM-Signature;
b=VlVgonFlBZ2iuSkyYTxCcJCScw/lea3Bclogw4SwEOzmBo2jXWaBh1AlBJSGtzGpeR30sbUbco
/amE27oEhBlCZmxenwcBYli/j/Pf2UvMlm2IvFcJkTtbTNft/UaSBsCMFsNPf+J7o9z/5F7exT
91zLUAUfWpVjhNwv5C2Oa6Lpk6usCTcYXKE7dlSwOVaxJAhCzosGifDccHby31boH2hdLmOuvi
twegvHNVVHVBrB5JxletcI/S/hmgeKrKTY95JkfbJIqQxYhzNrb4W4BGxWsCN9a/KLbgJ1Q6GE
n/bcsMNuq2NvNk97ODkI9nv74QBtjvGWJ8EiX9mDitcyHA==;
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org;
s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:
List-Subscribe:List-Help:List-Id:Sender:Content-Transfer-Encoding:
Content-Type:MIME-Version:Subject:References:In-Reply-To:Message-ID:To:From:
Date:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From:
Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID;
bh=CinPhKmXdUtjPeFBhU05ljUO7fkTTtg1z6zs2aKNeS0=; b=IR1KO4/oOguRZStxp5JoM0Ndgr
7fKh4lPElSEuJSEswFCBv7dxvPlWOXbptAu+p9cyKdYo6fNkPVACTa1p40g05Npwwb5xtMo5qlIHR
iTnPUB91VnhJxzStaEaYrCAXXpExNMrVMSTGEWPBig5GhC+SwQ8aYJYjdW9fTN8nFUYQHwtyAuD+e
m7W1r5tRWaxHXNDdkBz4QeYlUDLpFl9fJcyb5PYZ8pMLf0Dj3qvbWfKKkMFQCQefbsQK/LQB7Pk1E
UmJaz8fz24g49CzQxtMv7rpTN+ZcbE/d/u3SUfkgedjixNjqUmvUzb6tjvzemSQnKNRNvsFkEGZIr
S4dgwGHA==;
Received: from authenticated user by zero.zsh.org with local
id 1nPk0y-0003Oh-Aj; Thu, 03 Mar 2022 11:53:00 +0000
Authentication-Results: zsh.org;
iprev=pass (smtpq1.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.96;
dkim=pass header.d=ntlworld.com header.s=meg.feb2017 header.a=rsa-sha256;
dmarc=pass header.from=ntlworld.com;
arc=none
Received: from smtpq1.tb.ukmail.iss.as9143.net ([212.54.57.96]:54228)
by zero.zsh.org with esmtps (TLS1.2:ECDHE-RSA-AES256-GCM-SHA384:256)
id 1nPk0e-00032s-04; Thu, 03 Mar 2022 11:52:40 +0000
Received: from [212.54.57.81] (helo=smtp2.tb.ukmail.iss.as9143.net)
by smtpq1.tb.ukmail.iss.as9143.net with esmtp (Exim 4.90_1)
(envelope-from
)
id 1nPk0d-0000lh-Jh
for zsh-workers@zsh.org; Thu, 03 Mar 2022 12:52:39 +0100
Received: from oxbe7.tb.ukmail.iss.as9143.net ([172.25.160.138])
by smtp2.tb.ukmail.iss.as9143.net with ESMTP
id Pk0dndsiNfHYvPk0dnhKqq; Thu, 03 Mar 2022 12:52:39 +0100
X-Env-Mailfrom: p.w.stephenson@ntlworld.com
X-Env-Rcptto: zsh-workers@zsh.org
X-SourceIP: 172.25.160.138
X-CNFS-Analysis: v=2.4 cv=Wbkf1mtX c=1 sm=1 tr=0 ts=6220ac07 cx=a_exe
a=fsVlV1GYKS3C/xnq+HX56g==:117 a=wbvTLvLwOfMA:10 a=IkcTkHD0fZMA:10
a=7H6ixmLU1AQA:10 a=NLZqzBF-AAAA:8 a=20KFwNOVAAAA:8 a=gl3VgAuvut7-cSK6bxYA:9
a=QEXdDO2ut3YA:10 a=wW_WBVUImv98JQXhvVPZ:22
X-Authenticated-Sender: p.w.stephenson@ntlworld.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ntlworld.com;
s=meg.feb2017; t=1646308359;
bh=9NjnVQxDVo7+S5VZn7eg/Z6BAyBghwtS1FCknzmmNLk=;
h=Date:From:To:In-Reply-To:References:Subject;
b=uF7rjEfJl1DxmLznGlfP6UaB7vpYvYA+bx2GBOBB2k1N+vOwGC9k520x7/8dwrZxC
BXD60TgUelvd8QCGP5DSHRvXXgATzw/cV4t3JYWBQDuQlGZhigXUTDgepFqWE51e6u
xIvyD5PmNNXeZUEEggsEFwgbQIdufa19sICOoCFlotJbdmSxpWR3liySvNrVMe+18t
otGpJyYtibhvpqZsO9N6bUgQuyjNCXfekgsT5/xFZ4JUlw7jFgGdYqdqb+PslJ4AqU
yjtHyDSdipZbMUJsK5JKQxgQfXIjqTVFz4urh5roW7dec4yBYrSKedPB3dMHe1OPrf
Gqfe9sGzFX8Nw==
Date: Thu, 3 Mar 2022 11:52:39 +0000 (GMT)
From: Peter Stephenson
To: Lyude Paul , zsh-workers@zsh.org
Message-ID: <1630957415.1168113.1646308359498@mail2.virginmedia.com>
In-Reply-To: <142189641.1163040.1646300345691@mail2.virginmedia.com>
References: <5e9cdfc2b807bfc4aa4695938b70156742c2e120.camel@redhat.com>
<142189641.1163040.1646300345691@mail2.virginmedia.com>
Subject: Re: Regression with stdin handling in non-interactive mode between
5.8 and 5.8.1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
X-Priority: 3
Importance: Medium
X-Mailer: Open-Xchange Mailer v7.8.4-Rev72
X-Originating-IP: 147.161.167.85
X-Originating-Client: open-xchange-appsuite
X-CMAE-Envelope: MS4xfLBNu8mrppaoZdx/QY6xcpvOvdbISImCRnN/avzg3GehjW0Yml1UpYFEQMrGcJulL1vj3iR/Pzfa/8p+gYlwoSFp7GZk6if1ATR+Pc0h3uYVehT3sUxp
4IjCDchp/fXAWoveFQLyWdgl7DzLdTmdiu+C+RpOf3EqjwrR1ELgh5h1d+tFlBg1237V74OVFko7hViog0mLV9P5EdVdzRDtFuxM/mbwR1itkIsQQeYSYzer
NY0/wDS6nmAR/wrhxfyttg==
X-Seq: 49792
Archived-At:
X-Loop: zsh-workers@zsh.org
Errors-To: zsh-workers-owner@zsh.org
Precedence: list
Precedence: bulk
Sender: zsh-workers-request@zsh.org
X-no-archive: yes
List-Id:
List-Help:
List-Subscribe:
List-Unsubscribe:
List-Post:
List-Owner:
List-Archive:
> On 03 March 2022 at 09:39 Peter Stephenson wrote> > On 02 March 2022 at 22:38 Lyude Paul wrote:
> > Running on zsh 5.8 returns:
> >
> > Shell is 70
> > Shell is 71
> >
> > Running on zsh 5.8.1 however, returns:
> >
> > Shell is 86396
> > Shell is 86396
>
> Thanks for the nice simple test --- I'll try and concoct something similar
> but predictable for the shell tests.
Added to the patch; I've confirmed this succeeds or fails as expected.
pws
diff --git a/Src/input.c b/Src/input.c
index caeaff0e3..50cd2cd78 100644
--- a/Src/input.c
+++ b/Src/input.c
@@ -223,13 +223,20 @@ shingetchar(void)
return STOUC(*shinbufptr++);
shinbufreset();
- do {
+ for (;;) {
errno = 0;
- nread = read(SHIN, shinbuffer, SHINBUFSIZE);
- } while (nread < 0 && errno == EINTR);
- if (nread <= 0)
+ nread = read(SHIN, shinbufendptr, 1);
+ if (nread > 0) {
+ /* Use line buffering (POSIX requirement) */
+ if (*shinbufendptr++ == '\n')
+ break;
+ if (shinbufendptr == shinbuffer + SHINBUFSIZE)
+ break;
+ } else if (nread == 0 || errno != EINTR)
+ break;
+ }
+ if (shinbufendptr == shinbuffer)
return -1;
- shinbufendptr = shinbuffer + nread;
return STOUC(*shinbufptr++);
}
diff --git a/Test/A01grammar.ztst b/Test/A01grammar.ztst
index 4e39a8f3c..0312fe94e 100644
--- a/Test/A01grammar.ztst
+++ b/Test/A01grammar.ztst
@@ -961,3 +961,12 @@ F:Note that the behaviour of 'exit' inside try-list inside a function is unspeci
F:This test was written to ensure the behaviour doesn't change silently.
F:If this test fails during development, it *might* be appropriate to change
F:its expectations.
+
+ (
+ export VALUE=first
+ print -l 'echo Value is $VALUE' 'VALUE=second sh' 'echo Value is $VALUE' |
+ $ZTST_testdir/../Src/zsh -f
+ )
+0:Non-interactive shell command input is line buffered
+>Value is first
+>Value is second