# HG changeset patch # User Paul Eggert # Date 1294426357 28800 # Node ID 3dd4ed7016646435c2d37a53e3342722329ff44a # Parent 3d3d7ef762fdf9347d6de367ed8fe1883111be20# Parent 8d03223bf479965a6282fbc7d5f05673192af3b3 Merge from mainline. diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/ChangeLog --- a/etc/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/etc/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,9 @@ +2011-01-07 Tassilo Horn + + * themes/tsdh-light-theme.el, themes/tsdh-dark-theme.el: Remove + dev-prefix from file names, so that the files don't clash on 8x3 + filesystems. + 2011-01-06 Tassilo Horn * themes/dev-tsdh-light-theme.el (dev-tsdh-light): New theme. diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/NEWS --- a/etc/NEWS Thu Jan 06 21:16:15 2011 -0800 +++ b/etc/NEWS Fri Jan 07 10:52:37 2011 -0800 @@ -662,6 +662,8 @@ * Lisp changes in Emacs 24.1 +** `y-or-n-p' and `yes-or-no-p' now accept format string arguments. + ** `image-library-alist' is renamed to `dynamic-library-alist'. The variable is now used to load all kind of supported dynamic libraries, not just image libraries. The previous name is still available as an diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/themes/dev-tsdh-dark-theme.el --- a/etc/themes/dev-tsdh-dark-theme.el Thu Jan 06 21:16:15 2011 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -;;; dev-tsdh-dark-theme.el --- Tassilo's dark custom theme - -;; Copyright (C) 2011 Free Software Foundation, Inc. - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see . - -;;; Code: - -(deftheme dev-tsdh-dark - "Theme with dark background used and created by Tassilo Horn.") - -(custom-theme-set-faces - 'dev-tsdh-dark - '(default ((t (:background "gray20" :foreground "white smoke")))) - '(diff-added ((t (:inherit diff-changed :background "light green")))) - '(diff-changed ((t (:background "light steel blue")))) - '(diff-indicator-added ((t (:inherit diff-indicator-changed)))) - '(diff-indicator-changed ((t (:weight bold)))) - '(diff-indicator-removed ((t (:inherit diff-indicator-changed)))) - '(diff-removed ((t (:inherit diff-changed :background "sandy brown")))) - '(hl-line ((t (:background "grey28")))) - '(message-header-subject ((t (:foreground "SkyBlue")))) - '(minibuffer-prompt ((t (:background "yellow" :foreground "medium blue" :box (:line-width -1 :color "red" :style released-button) :weight bold)))) - '(mode-line ((t (:box (:line-width -1 :color "red" :style released-button) :family "DejaVu Sans")))) - '(mode-line-inactive ((t (:inherit mode-line :foreground "dim gray")))) - '(org-agenda-date ((t (:inherit org-agenda-structure)))) - '(org-agenda-date-today ((t (:inherit org-agenda-date :underline t)))) - '(org-agenda-date-weekend ((t (:inherit org-agenda-date :foreground "dark green")))) - '(org-agenda-structure ((t (:foreground "SkyBlue" :weight bold)))) - '(org-hide ((t (:foreground "gray30")))) - '(org-tag ((t (:weight bold)))) - '(outline-1 ((t (:inherit font-lock-function-name-face :weight bold)))) - '(outline-2 ((t (:inherit font-lock-variable-name-face :weight bold)))) - '(outline-3 ((t (:inherit font-lock-keyword-face :weight bold)))) - '(outline-4 ((t (:inherit font-lock-comment-face :weight bold)))) - '(outline-5 ((t (:inherit font-lock-type-face :weight bold)))) - '(outline-6 ((t (:inherit font-lock-constant-face :weight bold)))) - '(outline-7 ((t (:inherit font-lock-builtin-face :weight bold)))) - '(outline-8 ((t (:inherit font-lock-string-face :weight bold)))) - '(region ((t (:background "SteelBlue4")))) - '(show-paren-match ((t (:background "DarkGreen")))) - '(show-paren-mismatch ((t (:background "deep pink")))) - '(window-number-face ((t (:foreground "red" :weight bold))))) - -(provide-theme 'dev-tsdh-dark) - diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/themes/dev-tsdh-light-theme.el --- a/etc/themes/dev-tsdh-light-theme.el Thu Jan 06 21:16:15 2011 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -;;; dev-tsdh-light-theme.el --- Tassilo's light custom theme - -;; Copyright (C) 2011 Free Software Foundation, Inc. - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see . - -;;; Code: - -(deftheme dev-tsdh-light - "Black on white theme used and created by Tassilo Horn.") - -(custom-theme-set-faces - 'dev-tsdh-light - '(default ((t (:background "white" :foreground "black")))) - '(diff-added ((t (:inherit diff-changed :background "light green")))) - '(diff-changed ((t (:background "light steel blue")))) - '(diff-indicator-added ((t (:inherit diff-indicator-changed)))) - '(diff-indicator-changed ((t (:weight bold)))) - '(diff-indicator-removed ((t (:inherit diff-indicator-changed)))) - '(diff-removed ((t (:inherit diff-changed :background "sandy brown")))) - '(hl-line ((t (:background "grey95")))) - '(minibuffer-prompt ((t (:background "yellow" :foreground "medium blue" :box (:line-width -1 :color "red" :style released-button) :weight bold)))) - '(mode-line ((t (:box (:line-width -1 :color "red" :style released-button) :family "DejaVu Sans")))) - '(mode-line-inactive ((t (:inherit mode-line :foreground "dim gray")))) - '(org-agenda-date ((t (:inherit org-agenda-structure)))) - '(org-agenda-date-today ((t (:inherit org-agenda-date :underline t)))) - '(org-agenda-date-weekend ((t (:inherit org-agenda-date :foreground "dark green")))) - '(org-agenda-structure ((t (:foreground "Blue1" :weight bold :height 1.1 :family "DeJaVu Sans")))) - '(org-hide ((t (:foreground "white")))) - '(org-tag ((t (:weight bold)))) - '(outline-1 ((t (:inherit font-lock-function-name-face :weight bold)))) - '(outline-2 ((t (:inherit font-lock-variable-name-face :weight bold)))) - '(outline-3 ((t (:inherit font-lock-keyword-face :weight bold)))) - '(outline-4 ((t (:inherit font-lock-comment-face :weight bold)))) - '(outline-5 ((t (:inherit font-lock-type-face :weight bold)))) - '(outline-6 ((t (:inherit font-lock-constant-face :weight bold)))) - '(outline-7 ((t (:inherit font-lock-builtin-face :weight bold)))) - '(outline-8 ((t (:inherit font-lock-string-face :weight bold)))) - '(region ((t (:background "lightgoldenrod1")))) - '(show-paren-match ((t (:background "LightCyan2")))) - '(show-paren-mismatch ((t (:background "deep pink")))) - '(window-number-face ((t (:foreground "red" :weight bold))))) - -(provide-theme 'dev-tsdh-light) - diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/themes/tsdh-dark-theme.el --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/etc/themes/tsdh-dark-theme.el Fri Jan 07 10:52:37 2011 -0800 @@ -0,0 +1,59 @@ +;;; dev-tsdh-dark-theme.el --- Tassilo's dark custom theme + +;; Copyright (C) 2011 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Code: + +(deftheme dev-tsdh-dark + "Theme with dark background used and created by Tassilo Horn.") + +(custom-theme-set-faces + 'dev-tsdh-dark + '(default ((t (:background "gray20" :foreground "white smoke")))) + '(diff-added ((t (:inherit diff-changed :background "light green")))) + '(diff-changed ((t (:background "light steel blue")))) + '(diff-indicator-added ((t (:inherit diff-indicator-changed)))) + '(diff-indicator-changed ((t (:weight bold)))) + '(diff-indicator-removed ((t (:inherit diff-indicator-changed)))) + '(diff-removed ((t (:inherit diff-changed :background "sandy brown")))) + '(hl-line ((t (:background "grey28")))) + '(message-header-subject ((t (:foreground "SkyBlue")))) + '(minibuffer-prompt ((t (:background "yellow" :foreground "medium blue" :box (:line-width -1 :color "red" :style released-button) :weight bold)))) + '(mode-line ((t (:box (:line-width -1 :color "red" :style released-button) :family "DejaVu Sans")))) + '(mode-line-inactive ((t (:inherit mode-line :foreground "dim gray")))) + '(org-agenda-date ((t (:inherit org-agenda-structure)))) + '(org-agenda-date-today ((t (:inherit org-agenda-date :underline t)))) + '(org-agenda-date-weekend ((t (:inherit org-agenda-date :foreground "dark green")))) + '(org-agenda-structure ((t (:foreground "SkyBlue" :weight bold)))) + '(org-hide ((t (:foreground "gray30")))) + '(org-tag ((t (:weight bold)))) + '(outline-1 ((t (:inherit font-lock-function-name-face :weight bold)))) + '(outline-2 ((t (:inherit font-lock-variable-name-face :weight bold)))) + '(outline-3 ((t (:inherit font-lock-keyword-face :weight bold)))) + '(outline-4 ((t (:inherit font-lock-comment-face :weight bold)))) + '(outline-5 ((t (:inherit font-lock-type-face :weight bold)))) + '(outline-6 ((t (:inherit font-lock-constant-face :weight bold)))) + '(outline-7 ((t (:inherit font-lock-builtin-face :weight bold)))) + '(outline-8 ((t (:inherit font-lock-string-face :weight bold)))) + '(region ((t (:background "SteelBlue4")))) + '(show-paren-match ((t (:background "DarkGreen")))) + '(show-paren-mismatch ((t (:background "deep pink")))) + '(window-number-face ((t (:foreground "red" :weight bold))))) + +(provide-theme 'dev-tsdh-dark) + diff -r 3d3d7ef762fd -r 3dd4ed701664 etc/themes/tsdh-light-theme.el --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/etc/themes/tsdh-light-theme.el Fri Jan 07 10:52:37 2011 -0800 @@ -0,0 +1,58 @@ +;;; dev-tsdh-light-theme.el --- Tassilo's light custom theme + +;; Copyright (C) 2011 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Code: + +(deftheme dev-tsdh-light + "Black on white theme used and created by Tassilo Horn.") + +(custom-theme-set-faces + 'dev-tsdh-light + '(default ((t (:background "white" :foreground "black")))) + '(diff-added ((t (:inherit diff-changed :background "light green")))) + '(diff-changed ((t (:background "light steel blue")))) + '(diff-indicator-added ((t (:inherit diff-indicator-changed)))) + '(diff-indicator-changed ((t (:weight bold)))) + '(diff-indicator-removed ((t (:inherit diff-indicator-changed)))) + '(diff-removed ((t (:inherit diff-changed :background "sandy brown")))) + '(hl-line ((t (:background "grey95")))) + '(minibuffer-prompt ((t (:background "yellow" :foreground "medium blue" :box (:line-width -1 :color "red" :style released-button) :weight bold)))) + '(mode-line ((t (:box (:line-width -1 :color "red" :style released-button) :family "DejaVu Sans")))) + '(mode-line-inactive ((t (:inherit mode-line :foreground "dim gray")))) + '(org-agenda-date ((t (:inherit org-agenda-structure)))) + '(org-agenda-date-today ((t (:inherit org-agenda-date :underline t)))) + '(org-agenda-date-weekend ((t (:inherit org-agenda-date :foreground "dark green")))) + '(org-agenda-structure ((t (:foreground "Blue1" :weight bold :height 1.1 :family "DeJaVu Sans")))) + '(org-hide ((t (:foreground "white")))) + '(org-tag ((t (:weight bold)))) + '(outline-1 ((t (:inherit font-lock-function-name-face :weight bold)))) + '(outline-2 ((t (:inherit font-lock-variable-name-face :weight bold)))) + '(outline-3 ((t (:inherit font-lock-keyword-face :weight bold)))) + '(outline-4 ((t (:inherit font-lock-comment-face :weight bold)))) + '(outline-5 ((t (:inherit font-lock-type-face :weight bold)))) + '(outline-6 ((t (:inherit font-lock-constant-face :weight bold)))) + '(outline-7 ((t (:inherit font-lock-builtin-face :weight bold)))) + '(outline-8 ((t (:inherit font-lock-string-face :weight bold)))) + '(region ((t (:background "lightgoldenrod1")))) + '(show-paren-match ((t (:background "LightCyan2")))) + '(show-paren-mismatch ((t (:background "deep pink")))) + '(window-number-face ((t (:foreground "red" :weight bold))))) + +(provide-theme 'dev-tsdh-light) + diff -r 3d3d7ef762fd -r 3dd4ed701664 lisp/ChangeLog --- a/lisp/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/lisp/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,7 @@ +2011-01-07 Chong Yidong + + * subr.el (y-or-n-p): Accept format string args. + 2011-01-07 Glenn Morris * Makefile.in (EMACSOPT): Add --no-site-lisp. diff -r 3d3d7ef762fd -r 3dd4ed701664 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/lisp/gnus/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,11 @@ +2011-01-07 Daiki Ueno + + * mml2015.el (epg-sub-key-fingerprint): Autoload. + (mml2015-epg-find-usable-secret-key): New function. + (mml2015-epg-sign): Use mml2015-epg-find-usable-secret-key instead of + mml2015-epg-find-usable-key (Bug#7797). + (mml2015-epg-encrypt): Ditto. + 2011-01-03 Lars Magne Ingebrigtsen * flow-fill.el (fill-flowed-encode): Do encoding citation-aware. diff -r 3d3d7ef762fd -r 3dd4ed701664 lisp/gnus/mml2015.el --- a/lisp/gnus/mml2015.el Thu Jan 06 21:16:15 2011 -0800 +++ b/lisp/gnus/mml2015.el Fri Jan 07 10:52:37 2011 -0800 @@ -742,6 +742,7 @@ (autoload 'epg-key-sub-key-list "epg") (autoload 'epg-sub-key-capability "epg") (autoload 'epg-sub-key-validity "epg") +(autoload 'epg-sub-key-fingerprint "epg") (autoload 'epg-configuration "epg-config") (autoload 'epg-expand-group "epg-config") (autoload 'epa-select-keys "epa") @@ -784,6 +785,24 @@ (setq pointer (cdr pointer)))) (setq keys (cdr keys))))) +;; XXX: since gpg --list-secret-keys does not return validity of each +;; key, `mml2015-epg-find-usable-key' defined above is not enough for +;; secret keys. The function `mml2015-epg-find-usable-secret-key' +;; below looks at appropriate public keys to check usability. +(defun mml2015-epg-find-usable-secret-key (context name usage) + (let ((secret-keys (epg-list-keys context name t)) + secret-key) + (while (and (not secret-key) secret-keys) + (if (mml2015-epg-find-usable-key + (epg-list-keys context (epg-sub-key-fingerprint + (car (epg-key-sub-key-list + (car secret-keys))))) + usage) + (setq secret-key (car secret-keys) + secret-keys nil) + (setq secret-keys (cdr secret-keys)))) + secret-key)) + (defun mml2015-epg-decrypt (handle ctl) (catch 'error (let ((inhibit-redisplay t) @@ -960,9 +979,9 @@ (delq nil (mapcar (lambda (signer) - (setq signer-key (mml2015-epg-find-usable-key - (epg-list-keys context signer t) - 'sign)) + (setq signer-key + (mml2015-epg-find-usable-secret-key + context signer 'sign)) (unless (or signer-key (y-or-n-p (format @@ -1081,9 +1100,9 @@ (delq nil (mapcar (lambda (signer) - (setq signer-key (mml2015-epg-find-usable-key - (epg-list-keys context signer t) - 'sign)) + (setq signer-key + (mml2015-epg-find-usable-secret-key + context signer 'sign)) (unless (or signer-key (y-or-n-p (format diff -r 3d3d7ef762fd -r 3dd4ed701664 lisp/subr.el --- a/lisp/subr.el Thu Jan 06 21:16:15 2011 -0800 +++ b/lisp/subr.el Fri Jan 07 10:52:37 2011 -0800 @@ -2011,6 +2011,55 @@ (push read unread-command-events) nil)))))) (set-advertised-calling-convention 'sit-for '(seconds &optional nodisp) "22.1") + +(defun y-or-n-p (prompt &rest args) + "Ask user a \"y or n\" question. Return t if answer is \"y\". +The argument PROMPT is the string to display to ask the question. +It should end in a space; `y-or-n-p' adds `(y or n) ' to it. +No confirmation of the answer is requested; a single character is enough. +Also accepts Space to mean yes, or Delete to mean no. \(Actually, it uses +the bindings in `query-replace-map'; see the documentation of that variable +for more information. In this case, the useful bindings are `act', `skip', +`recenter', and `quit'.\) + +Under a windowing system a dialog box will be used if `last-nonmenu-event' +is nil and `use-dialog-box' is non-nil." + ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state + ;; where all the keys were unbound (i.e. it somehow got triggered + ;; within read-key, apparently). I had to kill it. + (let ((answer 'recenter)) + (if (and (display-popup-menus-p) + (listp last-nonmenu-event) + use-dialog-box) + (setq answer + (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip)))) + (setq prompt (concat (apply 'format prompt args) + (if (eq ?\s (aref prompt (1- (length prompt)))) + "" " ") + "(y or n) ")) + (while + (let* ((key + (let ((cursor-in-echo-area t)) + (when minibuffer-auto-raise + (raise-frame (window-frame (minibuffer-window)))) + (read-key (propertize (if (eq answer 'recenter) + prompt + (concat "Please answer y or n. " + prompt)) + 'face 'minibuffer-prompt))))) + (setq answer (lookup-key query-replace-map (vector key) t)) + (cond + ((memq answer '(skip act)) nil) + ((eq answer 'recenter) (recenter) t) + ((memq answer '(exit-prefix quit)) (signal 'quit nil) t) + (t t))) + (ding) + (discard-input))) + (let ((ret (eq answer 'act))) + (unless noninteractive + (message "%s %s" prompt (if ret "y" "n"))) + ret))) + ;;; Atomic change groups. @@ -3305,56 +3354,6 @@ (overlay-put ol2 'evaporate t) (overlay-put ol2 'text-clones dups))) -;;;; Misc functions moved over from the C side. - -(defun y-or-n-p (prompt) - "Ask user a \"y or n\" question. Return t if answer is \"y\". -The argument PROMPT is the string to display to ask the question. -It should end in a space; `y-or-n-p' adds `(y or n) ' to it. -No confirmation of the answer is requested; a single character is enough. -Also accepts Space to mean yes, or Delete to mean no. \(Actually, it uses -the bindings in `query-replace-map'; see the documentation of that variable -for more information. In this case, the useful bindings are `act', `skip', -`recenter', and `quit'.\) - -Under a windowing system a dialog box will be used if `last-nonmenu-event' -is nil and `use-dialog-box' is non-nil." - ;; ¡Beware! when I tried to edebug this code, Emacs got into a weird state - ;; where all the keys were unbound (i.e. it somehow got triggered - ;; within read-key, apparently). I had to kill it. - (let ((answer 'recenter)) - (if (and (display-popup-menus-p) - (listp last-nonmenu-event) - use-dialog-box) - (setq answer - (x-popup-dialog t `(,prompt ("yes" . act) ("No" . skip)))) - (setq prompt (concat prompt - (if (eq ?\s (aref prompt (1- (length prompt)))) - "" " ") - "(y or n) ")) - (while - (let* ((key - (let ((cursor-in-echo-area t)) - (when minibuffer-auto-raise - (raise-frame (window-frame (minibuffer-window)))) - (read-key (propertize (if (eq answer 'recenter) - prompt - (concat "Please answer y or n. " - prompt)) - 'face 'minibuffer-prompt))))) - (setq answer (lookup-key query-replace-map (vector key) t)) - (cond - ((memq answer '(skip act)) nil) - ((eq answer 'recenter) (recenter) t) - ((memq answer '(exit-prefix quit)) (signal 'quit nil) t) - (t t))) - (ding) - (discard-input))) - (let ((ret (eq answer 'act))) - (unless noninteractive - (message "%s %s" prompt (if ret "y" "n"))) - ret))) - ;;;; Mail user agents. ;; Here we include just enough for other packages to be able diff -r 3d3d7ef762fd -r 3dd4ed701664 msdos/ChangeLog --- a/msdos/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/msdos/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,7 @@ +2011-01-07 Eli Zaretskii + + * sed2v2.inp (HAVE___BUILTIN_UNWIND_INIT): Define. + 2010-12-04 Andreas Schwab * sed1v2.inp (M_FILE, S_FILE): Add $(srcdir)/ prefix. diff -r 3d3d7ef762fd -r 3dd4ed701664 msdos/sed2v2.inp --- a/msdos/sed2v2.inp Thu Jan 06 21:16:15 2011 -0800 +++ b/msdos/sed2v2.inp Fri Jan 07 10:52:37 2011 -0800 @@ -50,6 +50,7 @@ /^#undef HAVE_MKSTEMP *$/s/^.*$/#define HAVE_MKSTEMP 1/ /^#undef HAVE_STRUCT_TM_TM_ZONE *$/s/^.*$/#define HAVE_STRUCT_TM_TM_ZONE 1/ /^#undef HAVE_SYNC *$/s/^.*$/#define HAVE_SYNC 1/ +/^#undef HAVE___BUILTIN_UNWIND_INIT *$/s/^.*$/#define HAVE___BUILTIN_UNWIND_INIT 1/ /^#undef ORDINARY_LINK/s/^.*$/#define ORDINARY_LINK 1/ /^#undef PACKAGE_BUGREPORT/s/^.*$/#define PACKAGE_BUGREPORT ""/ /^#undef PACKAGE_NAME/s/^.*$/#define PACKAGE_NAME ""/ diff -r 3d3d7ef762fd -r 3dd4ed701664 nt/ChangeLog --- a/nt/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/nt/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,7 @@ +2011-01-07 Eli Zaretskii + + * config.nt (HAVE___BUILTIN_UNWIND_INIT) [GCC >= 2.8]: Define. + 2011-01-02 Eli Zaretskii * configure.bat (end): Unset environment variables used by this diff -r 3d3d7ef762fd -r 3dd4ed701664 nt/config.nt --- a/nt/config.nt Thu Jan 06 21:16:15 2011 -0800 +++ b/nt/config.nt Fri Jan 07 10:52:37 2011 -0800 @@ -287,6 +287,10 @@ #define EXTERNALLY_VISIBLE #endif +#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 8)) +#define HAVE___BUILTIN_UNWIND_INIT 1 +#endif + #undef EMACS_CONFIGURATION #undef EMACS_CONFIG_OPTIONS diff -r 3d3d7ef762fd -r 3dd4ed701664 src/ChangeLog --- a/src/ChangeLog Thu Jan 06 21:16:15 2011 -0800 +++ b/src/ChangeLog Fri Jan 07 10:52:37 2011 -0800 @@ -1,3 +1,7 @@ +2011-01-07 Chong Yidong + + * fns.c (Fyes_or_no_p): Accept format string args. + 2011-01-07 Glenn Morris * emacs.c (no_site_lisp): New int. diff -r 3d3d7ef762fd -r 3dd4ed701664 src/fns.c --- a/src/fns.c Thu Jan 06 21:16:15 2011 -0800 +++ b/src/fns.c Fri Jan 07 10:52:37 2011 -0800 @@ -2460,7 +2460,7 @@ /* Anything that calls this function must protect from GC! */ -DEFUN ("yes-or-no-p", Fyes_or_no_p, Syes_or_no_p, 1, 1, 0, +DEFUN ("yes-or-no-p", Fyes_or_no_p, Syes_or_no_p, 1, MANY, 0, doc: /* Ask user a yes-or-no question. Return t if answer is yes. Takes one argument, which is the string to display to ask the question. It should end in a space; `yes-or-no-p' adds `(yes or no) ' to it. @@ -2469,13 +2469,11 @@ Under a windowing system a dialog box will be used if `last-nonmenu-event' is nil, and `use-dialog-box' is non-nil. */) - (Lisp_Object prompt) + (int nargs, Lisp_Object *args) { register Lisp_Object ans; - Lisp_Object args[2]; struct gcpro gcpro1; - - CHECK_STRING (prompt); + Lisp_Object prompt = Fformat (nargs, args); #ifdef HAVE_MENUS if (FRAME_WINDOW_P (SELECTED_FRAME ()) @@ -2496,10 +2494,7 @@ } #endif /* HAVE_MENUS */ - args[0] = prompt; - args[1] = build_string ("(yes or no) "); - prompt = Fconcat (2, args); - + prompt = concat2 (prompt, build_string ("(yes or no) ")); GCPRO1 (prompt); while (1)