Implement Fmarkers_in using a marker_it

* src/marker.c (Fmarkers_in): Use 'marker_it_init' and friends.
This commit is contained in:
Pip Cet 2026-06-06 14:35:22 +00:00
parent 540dbab6b1
commit d3ed9ea699

View file

@ -842,9 +842,14 @@ The list includes markers at BEG and at END. */)
iend = clip_to_bounds (BEGV, XFIXNUM (end), ZV);
}
for (tail = BUF_MARKERS (current_buffer); tail; tail = tail->next)
if (ibeg <= tail->charpos && tail->charpos <= iend)
res = Fcons (make_lisp_ptr (tail, Lisp_Vectorlike), res);
struct marker_it it = marker_it_init (current_buffer);
while (marker_it_valid (&it))
{
tail = marker_it_marker (&it);
if (ibeg <= tail->charpos && tail->charpos <= iend)
res = Fcons (make_lisp_ptr (tail, Lisp_Vectorlike), res);
marker_it_next (&it);
}
return res;
}