Subject: bug#56682: Fix the long lines font locking related slowdowns

From: Eli Zaretskii <[email-masked]>
Date: Fri, 29 Jul 2022 16:58:35 +0300

> Cc: [email-masked], [email-masked], [email-masked],
>  [email-masked]
> Date: Fri, 29 Jul 2022 16:27:50 +0300
> From: Eli Zaretskii <[email-masked]>
> 
> Hmm...  I'm bothered by this code in handle_fontified_prop:
> 
>       if (it->narrowed_begv)
> 	Fnarrow_to_region (make_fixnum (it->narrowed_begv),
> 			   make_fixnum (it->narrowed_zv), Qt);
> 

And another thing: the condition on it->narrowed_begv being non-zero
means that as long as we are close enough to the beginning of a
buffer, we don't restrict fontification-functions from going as far as
they want into the buffer.

So I think the condition should be the long_line_optimizations_p flag
of the buffer, and we should narrow the buffer even when we are at
BOB, to prevent fontification-functions from going too far.