summaryrefslogtreecommitdiff
path: root/lisp/gnus/nnoo.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2006-02-17 00:24:04 +0000
committerMiles Bader <miles@gnu.org>2006-02-17 00:24:04 +0000
commitcf5a5c38c6d1263cbdcf4561b25f5e6988f4c419 (patch)
tree5c1508ea2fce2b511fe7733888ac4ad4d8e1e634 /lisp/gnus/nnoo.el
parent60b8fb50eefe34d56dbf42de2183ec6d21769379 (diff)
downloademacs-cf5a5c38c6d1263cbdcf4561b25f5e6988f4c419.tar.gz
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-93
Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 30-34) - Merge from emacs--devo--0 - Update from CVS
Diffstat (limited to 'lisp/gnus/nnoo.el')
-rw-r--r--lisp/gnus/nnoo.el16
1 files changed, 10 insertions, 6 deletions
diff --git a/lisp/gnus/nnoo.el b/lisp/gnus/nnoo.el
index 7a66b4c55aa..122183057b9 100644
--- a/lisp/gnus/nnoo.el
+++ b/lisp/gnus/nnoo.el
@@ -61,12 +61,16 @@
(defmacro nnoo-declare (backend &rest parents)
`(eval-and-compile
- (push (list ',backend
- (mapcar (lambda (p) (list p)) ',parents)
- nil nil)
- nnoo-definition-alist)
- (push (list ',backend "*internal-non-initialized-backend*")
- nnoo-state-alist)))
+ (if (assq ',backend nnoo-definition-alist)
+ (setcar (cdr (assq ',backend nnoo-definition-alist))
+ (mapcar 'list ',parents))
+ (push (list ',backend
+ (mapcar 'list ',parents)
+ nil nil)
+ nnoo-definition-alist))
+ (unless (assq ',backend nnoo-state-alist)
+ (push (list ',backend "*internal-non-initialized-backend*")
+ nnoo-state-alist))))
(put 'nnoo-declare 'lisp-indent-function 1)
(defun nnoo-parents (backend)