changeset 24826:a134726a4a15

(getf): Don't call get*.
author Karl Heuer <kwzh@gnu.org>
date Sat, 12 Jun 1999 03:36:46 +0000
parents f88179cfae99
children 487fdbc8de0f
files lisp/emacs-lisp/cl-extra.el
diffstat 1 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/cl-extra.el	Thu Jun 10 01:19:33 1999 +0000
+++ b/lisp/emacs-lisp/cl-extra.el	Sat Jun 12 03:36:46 1999 +0000
@@ -624,7 +624,13 @@
 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))