Fix overlay-start and overlay-end gv setters

This fixes Bug#76730.

* lisp/emacs-lisp/gv.el (overlay-start, overlay-end):
Avoid computing the set value twice.
This commit is contained in:
Michael Heerdegen 2025-03-05 16:09:30 +01:00
parent b741023070
commit 0c8d30045b

View file

@ -400,9 +400,11 @@ See also `incf'."
(gv-define-simple-setter match-data set-match-data 'fix)
(gv-define-simple-setter overlay-get overlay-put)
(gv-define-setter overlay-start (store ov)
`(progn (move-overlay ,ov ,store (overlay-end ,ov)) ,store))
(macroexp-let2 nil store store
`(progn (move-overlay ,ov ,store (overlay-end ,ov)) ,store)))
(gv-define-setter overlay-end (store ov)
`(progn (move-overlay ,ov (overlay-start ,ov) ,store) ,store))
(macroexp-let2 nil store store
`(progn (move-overlay ,ov (overlay-start ,ov) ,store) ,store)))
(gv-define-simple-setter process-buffer set-process-buffer)
(gv-define-simple-setter process-filter set-process-filter)
(gv-define-simple-setter process-sentinel set-process-sentinel)