Subject: Re: bug#79200: 31.0.50; Duplicated elements for '#<marker at' in buffer-undo-list

From: Helmut Eller <[email-masked]>
Date: Tue, 12 Aug 2025 10:09:26 +0200

On Tue, Aug 12 2025, Gerd Möllmann wrote:

> An alternative for igc, maybe, could be to make the markers in the
> marker adjustment entries weak references. We'd need such weak
> references, though, as Lisp objects. I have a vague memory that igc had
> that at some point, does someone remember?

For a time we had weak-ref Lisp objects.  I suppose putting such
weak-refs in the undo list would still break some code.  Instead of
weak-refs one could also use another layer of indirection, e.g. put a
fixnum in the undo list and the fixnum is a key in a weak hashtable that
holds markers weakly.

Even better would be if we could put positions instead of markers in the
undo list.  After undoing, positions should be correct again; in an
ideal world anyway.

Helmut