lisp/frameset.el (frameset-prop): Preserve `setf' semantics in setter.
authorJuanma Barranquero <lekktu@gmail.com>
Sat, 3 Aug 2013 13:33:22 +0000 (15:33 +0200)
committerJuanma Barranquero <lekktu@gmail.com>
Sat, 3 Aug 2013 13:33:22 +0000 (15:33 +0200)
lisp/frameset.el

index 8bb734b..914ef53 100644 (file)
@@ -87,11 +87,13 @@ Properties other than :version can be set with
   (setf (frameset-prop FRAMESET PROP) NEW-VALUE)"
   (plist-get (frameset-properties frameset) prop))
 
-(gv-define-setter frameset-prop (v fs prop)
-  `(progn
-     (cl-assert (not (eq ,prop :version)) t ":version can not be set")
-     (setf (frameset-properties ,fs)
-        (plist-put (frameset-properties ,fs) ,prop ,v))))
+(gv-define-setter frameset-prop (val fs prop)
+  (macroexp-let2 nil v val
+    `(progn
+       (cl-assert (not (eq ,prop :version)) t ":version can not be set")
+       (setf (frameset-properties ,fs)
+            (plist-put (frameset-properties ,fs) ,prop ,v))
+       ,v)))
 
 \f
 ;; Filtering