Subject: Re: bug#71525: 30.0.50; Spin in delete-region/interval_deletion_adjustment Spin in delete-region/interval_deletion_adjustment)

From: Dmitry Gutov <[email-masked]>
Date: Fri, 14 Jun 2024 21:17:22 +0300

On 14/06/2024 10:13, Eli Zaretskii wrote:
>>   /* Insert a sequence of NCHARS chars which occupy NBYTES bytes
>>      starting at GAP_END_ADDR - NBYTES (if text_at_gap_tail) and at
>> -   GPT_ADDR (if not text_at_gap_tail).  */
>> +   GPT_ADDR (if not text_at_gap_tail).
>> +
>> +  If BEFORE_MARKERS is true, insert before markers. */
> This commentary should also mention process.c as the single caller
> using this facility in unconventional ways.

Also note that I did make some effort to make the field 
coding->insert_before_markers used consistently: in the changeset, it's 
not just obeyed on the code path that decode_coding_c_string goes 
through - it's used anywhere where insert_from_gap is called and a 
coding_system structure is available - e.g. in encode_coding.

Also in decode_coding_gap, but that one seems to only have one caller 
(insert-file-contents), so that choice is moot.

Something else I've noticed (a bit off topic): insert_from_gap_1's 
comments says that it "does not invalidate any cache, nor update any 
markers, nor record any buffer modification information of any sort", 
but then it calls treesit_record_change when available. Not sure we need 
to change that, but maybe we should update the comment, at least.