summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2021-03-05 12:39:27 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2021-03-05 12:39:27 -0500
commitc881e990e3a083d7c8b990a2004a3ae82b886b9d (patch)
treed04e30f6d11be2c6b91adac7548a113bd4e0f41d
parent9f09083bcd68cbaa0b6c14d560ad81ba878cf7be (diff)
downloademacs-c881e990e3a083d7c8b990a2004a3ae82b886b9d.tar.gz
* lisp/emacs-lisp/gv.el (edebug-after): Don't run the getter in the setter
This fixes bug#46573 which was introduced by commit d79cf638f278e50c22feb53d6ba556f5ce9d7853. The new code is a middle ground, which makes sure the instrumentation point is used (so the coverage checker won't have ghost unreachable instrumentation points) yet without artificially running the getter when we only need to run the setter.
-rw-r--r--lisp/emacs-lisp/gv.el3
1 files changed, 1 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el
index 4d2bcbfaf5f..c9eac70d8f3 100644
--- a/lisp/emacs-lisp/gv.el
+++ b/lisp/emacs-lisp/gv.el
@@ -306,8 +306,7 @@ The return value is the last VAL in the list.
(gv-letplace (getter setter) place
(funcall do `(edebug-after ,before ,index ,getter)
(lambda (store)
- `(progn (edebug-after ,before ,index ,getter)
- ,(funcall setter store)))))))
+ `(edebug-after ,before ,index ,(funcall setter store)))))))
;;; The common generalized variables.