On Friday, April 17, 2015 9:17:53 PM CET Peter Stephenson wrote:
> On Fri, 17 Apr 2015 15:25:55 +0200
>
> Kamil Dudka <kdudka@xxxxxxxxxx> wrote:
> > ... in order to prevent SIGSEGV on the following input when running
> > in the interactive mode:
> >
> > <<X;'
> > ^C
> >
> > ^C
>
> I think that still leaves cruft around of other kinds. I think the fix
> is something like the following.
>
> diff --git a/Src/parse.c b/Src/parse.c
> index 91a81e1..985eb8e 100644
> --- a/Src/parse.c
> +++ b/Src/parse.c
> @@ -605,6 +605,7 @@ par_event(int endtok)
> if (!par_event(endtok)) {
> ecused = oec;
> ecbuf[p] |= wc_bdata(Z_END);
> + return errflag ? 0 : 1;
> }
> }
> return 1;
>
> pws
Since the above patch was applied, zsh exits successfully (despite it reports
parse error) on the attached example:
% zsh parse-error.sh; echo $?
parse-error.sh:4: parse error
0
Is this expected?
KamilAttachment:
parse-error.sh
Description: application/shellscript