|
From: | Gerd Möllmann |
Subject: | bug#58158: 29.0.50; [overlay] Interval tree iteration considered harmful |
Date: | Thu, 29 Sep 2022 07:29:25 +0200 |
In its current form, interval tree iteration works like this: 1. Call begin_iteration(T) to iterate over tree T 2. do stuff 3. Call end_iteration(T) with the following rules: - Begin_iteration and end_iteration must be paired. - There can be only one iteration per tree at a time. Nested iteration over the same tree is not supported (abort). - No GC may happen in step 2. This is because mark_buffer iterates over buffer overlays. I think this is an exceedingly dangerous design.
[Prev in Thread] | Current Thread | [Next in Thread] |