bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#63535: Master branch: Error in forw_comment (syntax.c) handling of e


From: Stefan Monnier
Subject: bug#63535: Master branch: Error in forw_comment (syntax.c) handling of escaped LFs
Date: Wed, 17 May 2023 18:01:32 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

Hi Alan,

> diff --git a/src/syntax.c b/src/syntax.c
> index e9e04e2d638..76d9f16e4ed 100644
> --- a/src/syntax.c
> +++ b/src/syntax.c
> @@ -2344,7 +2344,9 @@ forw_comment (ptrdiff_t from, ptrdiff_t from_byte, 
> ptrdiff_t stop,
>         && SYNTAX_FLAGS_COMMENT_STYLE (syntax, 0) == style
>         && (SYNTAX_FLAGS_COMMENT_NESTED (syntax) ?
>             (nesting > 0 && --nesting == 0) : nesting < 0)
> -          && !(comment_end_can_be_escaped && char_quoted (from, from_byte)))
> +          && !(comment_end_can_be_escaped &&
> +            (((prev_syntax & 0xff) == Sescape)
> +             || ((prev_syntax & 0xff) == Scharquote))))
>       /* We have encountered a comment end of the same style
>          as the comment sequence which began this comment
>          section.  */

AFAIK this is your code, so you should know better, but AFAICT
`prev_syntax` is not updated in the loop, so it only reflects the syntax
before the beginning of the scanned text, rather than anything near `from`.
Are you sure this is right?


        Stefan






reply via email to

[Prev in Thread] Current Thread [Next in Thread]