]> git.eshelyaron.com Git - emacs.git/commit
Revert "mark_overlays: Use the normal ITREE_FOREACH"
authorMatt Armstrong <matt@rfc20.org>
Wed, 19 Oct 2022 20:42:35 +0000 (13:42 -0700)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 20 Oct 2022 01:35:09 +0000 (21:35 -0400)
commit06252617b2c4cc9bcdd9407f1e709a7e0908cf27
tree494a0f21b5f87949886c57bfba87bd4ab013f49b
parent8159d8b1a71dd59e31060f00b2abe20ad9d1f924
Revert "mark_overlays: Use the normal ITREE_FOREACH"

This reverts commit b8fbd42f0a7caa4cd9e2d50dd4e4b2101ac78acd,
with edits.

* src/alloc.c (mark_overlays): restore function.
(mark_buffer): Call it, not ITREE_FOREACH.
(garbage_collect): eassert (!itree_busy_p ()).
* src/itree.h: Comment tweak: explain why GC is considered risky.  It
isn't that GC itself is risky, it is that GC can call ELisp by way of
a hook, and running ELisp during iteration is risks nested iteration.
src/alloc.c
src/itree.h