Subject: bug#59622: 29.0.50; [PATCH] Regression in Eshell's handling of escaped newlines

From: Eli Zaretskii <[email-masked]>
Date: Sun, 04 Dec 2022 09:26:04 +0200

> Date: Sat, 3 Dec 2022 17:41:50 -0800
> From: Jim Porter <[email-masked]>
> 
> On 11/26/2022 4:36 PM, Jim Porter wrote:
> > Starting from "emacs -Q -f eshell":
> > 
> >    # Emacs 28
> >    ~ $ echo foo\
> >    bar
> > 
> >    foobar
> > 
> >    # Emacs 29
> >    ~ $ echo foo\
> >    bar
> > 
> >    foo
> >    bar
> > 
> > That is, Emacs 28 used to treat escaped newlines in the way you'd expect 
> > from other shells: it expands to the empty string. Now in Emacs 29, it 
> > inserts a literal newline.
> 
> Eli, since this is a regression from Emacs 28 (likely fallout from one 
> of my changes to fix some longstanding bugs with quotes in Eshell), 
> would my current patch be ok on the release branch?

Yes, but please do try to make it as safe as is feasible.

> I can try to minimize the changes a bit further (I slightly refactored
> 'eshell-parse-backslash' to reduce repetition), but since it has unit
> tests, I think it should be pretty safe either way.

OK.