]> git.eshelyaron.com Git - emacs.git/commitdiff
(getf): Don't call get*.
authorKarl Heuer <kwzh@gnu.org>
Sat, 12 Jun 1999 03:36:46 +0000 (03:36 +0000)
committerKarl Heuer <kwzh@gnu.org>
Sat, 12 Jun 1999 03:36:46 +0000 (03:36 +0000)
lisp/emacs-lisp/cl-extra.el

index 2402d799108d2f2d66f6ce864e28a37fd20936c5..46801c6cc3694f673fbad8ae8947bf473e368e3e 100644 (file)
@@ -624,7 +624,13 @@ argument VECP, this copies vectors as well as conses."
 PROPLIST is a list of the sort returned by `symbol-plist'."
   (setplist '--cl-getf-symbol-- plist)
   (or (get '--cl-getf-symbol-- tag)
-      (and def (get* '--cl-getf-symbol-- tag def))))
+      ;; Originally we called get* here,
+      ;; but that fails, because get* has a compiler macro
+      ;; definition that uses getf!
+      (when def
+       (while (and plist (not (eq (car plist) tag)))
+         (setq plist (cdr (cdr plist))))
+       (if plist (car (cdr plist)) def))))
 
 (defun cl-set-getf (plist tag val)
   (let ((p plist))