From 36d55cd47912cf633a9f72567a9b9118f4f22776 Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Thu, 26 Apr 2012 22:07:59 +0000 Subject: [PATCH] lisp/gnus/plstore.el: Fix buildbot failure with XEmacs --- lisp/gnus/ChangeLog | 6 ++++++ lisp/gnus/plstore.el | 14 +++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index be4d0675781..e25ffd933e6 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,9 @@ +2012-04-26 Daiki Ueno + + * plstore.el (plstore-called-interactively-p): New compat macro copied + from message.el. + (plstore-mode): Use it. + 2012-04-26 Daiki Ueno * plstore.el: Revive the editing feature. diff --git a/lisp/gnus/plstore.el b/lisp/gnus/plstore.el index 2f446c84071..6d5424e833d 100644 --- a/lisp/gnus/plstore.el +++ b/lisp/gnus/plstore.el @@ -547,6 +547,18 @@ If no one is selected, symmetric encryption will be performed. " (plstore-mode-original) (plstore-mode-decoded))) +(eval-when-compile + (defmacro plstore-called-interactively-p (kind) + (condition-case nil + (progn + (eval '(called-interactively-p 'any)) + ;; Emacs >=23.2 + `(called-interactively-p ,kind)) + ;; Emacs <23.2 + (wrong-number-of-arguments '(called-interactively-p)) + ;; XEmacs + (void-function '(interactive-p))))) + ;;;###autoload (define-derived-mode plstore-mode emacs-lisp-mode "PLSTORE" "Major mode for editing PLSTORE files." @@ -554,7 +566,7 @@ If no one is selected, symmetric encryption will be performed. " (add-hook 'write-contents-functions #'plstore--write-contents-functions) (define-key plstore-mode-map "\C-c\C-c" #'plstore-mode-toggle-display) ;; to create a new file with plstore-mode, mark it as already decoded - (if (called-interactively-p 'any) + (if (plstore-called-interactively-p 'any) (setq plstore-encoded t) (plstore-mode-decoded))) -- 2.39.2