# HG changeset patch # User Richard M. Stallman # Date 893134486 0 # Node ID 95c0fe8d25a74ae7c571ddaae67db78987780fb8 # Parent 855aedeb07428b25860e93f806e18d63df44d92f (easy-menu-do-add-item): Do the right thing when nil is specified as criterion for activeness. Fix string used to report an invalid item. diff -r 855aedeb0742 -r 95c0fe8d25a7 lisp/emacs-lisp/easymenu.el --- a/lisp/emacs-lisp/easymenu.el Tue Apr 21 04:51:23 1998 +0000 +++ b/lisp/emacs-lisp/easymenu.el Tue Apr 21 04:54:46 1998 +0000 @@ -187,18 +187,19 @@ (setq name (setq item-string (aref item 0))) (setq command (easy-menu-make-symbol (aref item 1) t)) (let ((active (if (> (length item) 2) (aref item 2) t)) + (active-specified (> (length item) 2)) (count 2) style selected) (if (and (symbolp active) (= ?: (aref (symbol-name active) 0))) (let ((count 2) keyword arg suffix keys) - (setq active nil) + (setq active-specified nil) (while (> (length item) count) (setq keyword (aref item count)) (setq arg (aref item (1+ count))) (setq count (+ 2 count)) (cond ((eq keyword ':keys) (setq keys arg)) - ((eq keyword ':active) (setq active arg)) + ((eq keyword ':active) (setq active arg active-specified t)) ((eq keyword ':suffix) (setq suffix (concat " " arg))) ((eq keyword ':style) (setq style arg)) ((eq keyword ':selected) (setq selected arg)))) @@ -214,13 +215,15 @@ ,selected ,(or active t))) (setq is-button t) - (setq active nil) ; Already taken care of active. + (setq active-specified nil) ; Already taken care of active. (when (not (or have-buttons top)) (setq have-buttons " ") ;; Add prefix to menu items defined so far. - (easy-menu-change-prefix menu t))))) - (if active (put command 'menu-enable active)))) - (t "Illegal menu item in easy menu.")) + (easy-menu-change-prefix menu t)))) + (and (null active) active-specified + (setq active ''nil))) + (if active-specified (put command 'menu-enable active)))) + (t "Invalid menu item in easymenu")) (when name (and (not is-button) have-buttons (setq item-string (concat have-buttons item-string)))