Re: [PATCH v2] tests: avoid syntax triggering old dash bug
To
Ævar Arnfjörð Bjarmason
Cc
git@vger.kernel.org
Junio C Hamano
Eric Sunshine
hsed@unimetic.com
From
SZEDER Gábor
See Also
Prev Ref 1
Date
2019-02-13 21:48:44 UTC
On Wed, Feb 13, 2019 at 12:59:51PM +0100, Ævar Arnfjörð Bjarmason wrote:
> Avoid a bug in dash that's been fixed ever since its
> ec2c84d ("[PARSER] Fix clobbering of checkkwd", 2011-03-15)[1] first
> released with dash v0.5.7 in July 2011. This failing test was
> introduced in 5f9674243d ("config: add --expiry-date", 2017-11-18).
> 
> This fixes 1/2 tests failing on Debian Lenny & Squeeze. The other

Do I understand this "1/2" right?  There are two tests failing on
Lenny and Squeeze, and this fixes one of those bugs?

> failure is due to 1b42f45255 ("git-svn: apply "svn.pathnameencoding"
> before URL encoding", 2016-02-09).
> 
> The dash bug is triggered by this test because the heredoc contains a
> command embedded in "$()" with a "{}" block coming right after
> it. Refactoring the "$()" to e.g. be a variable that was set earlier
> will also work around it, but let's instead break up the "EOF" and the
> "{}".
> 
> An earlier version of this patch[2] mitigated the issue by breaking
> the "$()" out of the "{}" block, that worked, but just because it
> broke up the "EOF" and "{}" block. Putting e.g. "echo &&" between the
> two would also work.
> 
> 1. https://git.kernel.org/pub/scm/utils/dash/dash.git/

Could you please link directly to the commit fixing that issue?

  https://git.kernel.org/pub/scm/utils/dash/dash.git/commit/?id=ec2c84d3c4dba4b74440d72bdd1de416a9acd2a9

> 2. https://public-inbox.org/git/20181127164253.9832-1-avarab@gmail.com/
> 
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>