From: Tomi Ollila Date: Fri, 13 Jan 2012 08:17:28 +0000 (+0200) Subject: test: make (kill-emacs) from emacsclient work with emacs 23.(1|2) X-Git-Tag: debian/0.12_rc1-1~173 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=a04642043fa8f071e0dbc73a204fcc91dc3c8401 test: make (kill-emacs) from emacsclient work with emacs 23.(1|2) emacsclient --eval '(kill-emacs)' makes emacs versions 23.1 and 23.2 ask user input from running emacs. Redefining yes-or-no-p function when kill-emacs is executed for these emacs versions in test-lib.el avoids this test problem. --- diff --git a/test/test-lib.el b/test/test-lib.el index 3b817c37..59c58681 100644 --- a/test/test-lib.el +++ b/test/test-lib.el @@ -26,6 +26,13 @@ ;; `read' call. (setq read-file-name-function (lambda (&rest _) (read))) +;; Work around a bug in emacs 23.1 and emacs 23.2 which prevents +;; noninteractive (kill-emacs) from emacsclient. +(if (and (= emacs-major-version 23) (< emacs-minor-version 3)) + (defadvice kill-emacs (before disable-yes-or-no-p activate) + "Disable yes-or-no-p before executing kill-emacs" + (defun yes-or-no-p (prompt) t))) + (defun notmuch-test-wait () "Wait for process completion." (while (get-buffer-process (current-buffer))