# HG changeset patch # User Miles Bader # Date 1184464259 0 # Node ID e0cd45299f772887852fe669926670d99f495367 # Parent a7d43c06a61a3c79dd0e73bb06bd64eb71e343a7# Parent f0705c4da65a1bc711d44cf9225597b13be23528 Merge from emacs--rel--22 Patches applied: * emacs--rel--22 (patch 55-58) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 235-236) - Update from CVS 2007-07-13 Dan Nicolaescu * lisp/replace.el (match): Use yellow1 instead of yellow. * lisp/progmodes/gdb-ui.el (breakpoint-enabled): Use red1 instead of red. * lisp/pcvs-info.el (cvs-unknown): Likewise. 2007-07-10 Richard Stallman * lisp/emacs-lisp/lisp-mode.el (eval-defun): Explain special handling of `defface'. 2007-07-13 Katsumi Yamaoka * lisp/gnus/gnus-srvr.el (gnus-server-agent-face, gnus-server-opened-face) (gnus-server-closed-face, gnus-server-denied-face) (gnus-server-offline-face): Remove variable. (gnus-server-font-lock-keywords): Use faces that are not aliases. * lisp/gnus/mm-util.el (mm-decode-coding-string, mm-encode-coding-string) (mm-decode-coding-region, mm-encode-coding-region): Don't modify string if the coding-system argument is nil for XEmacs. * lisp/gnus/nnrss.el (nnrss-compatible-encoding-alist): Inherit the value of mm-charset-override-alist. * lisp/gnus/rfc2047.el: Don't require base64; require rfc2045 for the function rfc2045-encode-string. (rfc2047-encode-parameter): Use rfc2045-encode-string to quote or not to quote the parameter value. 2007-07-10 Richard Stallman * lispref/display.texi (Defining Faces): Explain C-M-x feature for defface. 2007-07-11 Jason Rumney * nt/gmake.defs (OLE32): New library to link. * nt/nmake.defs (OLE32): Likewise. 2007-07-11 Jason Rumney * src/makefile.w32-in (LIBS): Include OLE32. * src/w32fns.c (w32_msg_pump) : Initialize COM. (w32_msg_pump) : Uninitialize COM. Revision: emacs@sv.gnu.org/emacs--devo--0--patch-812 diff -r a7d43c06a61a -r e0cd45299f77 lisp/ChangeLog --- a/lisp/ChangeLog Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/ChangeLog Sun Jul 15 01:50:59 2007 +0000 @@ -31,6 +31,15 @@ * subr.el (when, unless): Doc fix. +2007-07-13 Dan Nicolaescu + + * replace.el (match): Use yellow1 instead of yellow. + + * progmodes/gdb-ui.el (breakpoint-enabled): Use red1 instead of + red. + + * pcvs-info.el (cvs-unknown): Likewise. + 2007-07-13 Eli Zaretskii * makefile.w32-in (install-lisp-SH, install-lisp-CMD): New targets. @@ -140,6 +149,11 @@ * menu-bar.el (vc-menu-map): New defalias. +2007-07-10 Richard Stallman + + * emacs-lisp/lisp-mode.el (eval-defun): + Explain special handling of `defface'. + 2007-07-10 Jim Meyering (tiny change) * emacs-lisp/copyright.el (copyright-current-gpl-version): Set to 3. diff -r a7d43c06a61a -r e0cd45299f77 lisp/emacs-lisp/lisp-mode.el --- a/lisp/emacs-lisp/lisp-mode.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/emacs-lisp/lisp-mode.el Sun Jul 15 01:50:59 2007 +0000 @@ -730,7 +730,9 @@ evaluating it this way resets the variable using its initial value expression even if the variable already has some other value. \(Normally `defvar' and `defcustom' do not alter the value if there -already is one.) +already is one.) In an analogous way, evaluating a `defface' +overrides any customizations of the face, so that it becomes +defined exactly as the `defface' expression says. If `eval-expression-debug-on-error' is non-nil, which is the default, this command arranges for all errors to enter the debugger. diff -r a7d43c06a61a -r e0cd45299f77 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/gnus/ChangeLog Sun Jul 15 01:50:59 2007 +0000 @@ -3,6 +3,25 @@ * gnus-art.el (gnus-mime-delete-part): Don't go through article-edit finishing actions if we did not edit the article. +2007-07-13 Katsumi Yamaoka + + * gnus-srvr.el (gnus-server-agent-face, gnus-server-opened-face) + (gnus-server-closed-face, gnus-server-denied-face) + (gnus-server-offline-face): Remove variable. + (gnus-server-font-lock-keywords): Use faces that are not aliases. + + * mm-util.el (mm-decode-coding-string, mm-encode-coding-string) + (mm-decode-coding-region, mm-encode-coding-region): Don't modify string + if the coding-system argument is nil for XEmacs. + + * nnrss.el (nnrss-compatible-encoding-alist): Inherit the value of + mm-charset-override-alist. + + * rfc2047.el: Don't require base64; require rfc2045 for the function + rfc2045-encode-string. + (rfc2047-encode-parameter): Use rfc2045-encode-string to quote or not + to quote the parameter value. + 2007-07-04 Katsumi Yamaoka * gnus-sum.el (gnus-summary-catchup): Don't recognize cached articles diff -r a7d43c06a61a -r e0cd45299f77 lisp/gnus/gnus-srvr.el --- a/lisp/gnus/gnus-srvr.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/gnus/gnus-srvr.el Sun Jul 15 01:50:59 2007 +0000 @@ -214,43 +214,12 @@ ;; backward-compatibility alias (put 'gnus-server-offline-face 'face-alias 'gnus-server-offline) -(defcustom gnus-server-agent-face 'gnus-server-agent - "Face name to use on AGENTIZED servers." - :version "22.1" - :group 'gnus-server-visual - :type 'face) - -(defcustom gnus-server-opened-face 'gnus-server-opened - "Face name to use on OPENED servers." - :version "22.1" - :group 'gnus-server-visual - :type 'face) - -(defcustom gnus-server-closed-face 'gnus-server-closed - "Face name to use on CLOSED servers." - :version "22.1" - :group 'gnus-server-visual - :type 'face) - -(defcustom gnus-server-denied-face 'gnus-server-denied - "Face name to use on DENIED servers." - :version "22.1" - :group 'gnus-server-visual - :type 'face) - -(defcustom gnus-server-offline-face 'gnus-server-offline - "Face name to use on OFFLINE servers." - :version "22.1" - :group 'gnus-server-visual - :type 'face) - (defvar gnus-server-font-lock-keywords - (list - '("(\\(agent\\))" 1 gnus-server-agent-face) - '("(\\(opened\\))" 1 gnus-server-opened-face) - '("(\\(closed\\))" 1 gnus-server-closed-face) - '("(\\(offline\\))" 1 gnus-server-offline-face) - '("(\\(denied\\))" 1 gnus-server-denied-face))) + '(("(\\(agent\\))" 1 gnus-server-agent) + ("(\\(opened\\))" 1 gnus-server-opened) + ("(\\(closed\\))" 1 gnus-server-closed) + ("(\\(offline\\))" 1 gnus-server-offline) + ("(\\(denied\\))" 1 gnus-server-denied))) (defun gnus-server-mode () "Major mode for listing and editing servers. diff -r a7d43c06a61a -r e0cd45299f77 lisp/gnus/mm-util.el --- a/lisp/gnus/mm-util.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/gnus/mm-util.el Sun Jul 15 01:50:59 2007 +0000 @@ -36,11 +36,7 @@ (if (fboundp (car elem)) (defalias nfunc (car elem)) (defalias nfunc (cdr elem))))) - '((decode-coding-string . (lambda (s a) s)) - (encode-coding-string . (lambda (s a) s)) - (encode-coding-region . ignore) - (coding-system-list . ignore) - (decode-coding-region . ignore) + '((coding-system-list . ignore) (char-int . identity) (coding-system-equal . equal) (annotationp . ignore) @@ -97,6 +93,34 @@ (multibyte-char-to-unibyte . identity)))) (eval-and-compile + (if (featurep 'xemacs) + (if (featurep 'file-coding) + ;; Don't modify string if CODING-SYSTEM is nil. + (progn + (defun mm-decode-coding-string (str coding-system) + (if coding-system + (decode-coding-string str coding-system) + str)) + (defun mm-encode-coding-string (str coding-system) + (if coding-system + (encode-coding-string str coding-system) + str)) + (defun mm-decode-coding-region (start end coding-system) + (if coding-system + (decode-coding-region start end coding-system))) + (defun mm-encode-coding-region (start end coding-system) + (if coding-system + (encode-coding-region start end coding-system)))) + (defun mm-decode-coding-string (str coding-system) str) + (defun mm-encode-coding-string (str coding-system) str) + (defalias 'mm-decode-coding-region 'ignore) + (defalias 'mm-encode-coding-region 'ignore)) + (defalias 'mm-decode-coding-string 'decode-coding-string) + (defalias 'mm-encode-coding-string 'encode-coding-string) + (defalias 'mm-decode-coding-region 'decode-coding-region) + (defalias 'mm-encode-coding-region 'encode-coding-region))) + +(eval-and-compile (cond ((fboundp 'replace-in-string) (defalias 'mm-replace-in-string 'replace-in-string)) diff -r a7d43c06a61a -r e0cd45299f77 lisp/gnus/nnrss.el --- a/lisp/gnus/nnrss.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/gnus/nnrss.el Sun Jul 15 01:50:59 2007 +0000 @@ -85,7 +85,12 @@ (defvar nnrss-file-coding-system mm-universal-coding-system "Coding system used when reading and writing files.") -(defvar nnrss-compatible-encoding-alist '((iso-8859-1 . windows-1252)) +(defvar nnrss-compatible-encoding-alist + (delq nil (mapcar (lambda (elem) + (if (and (mm-coding-system-p (car elem)) + (mm-coding-system-p (cdr elem))) + elem)) + mm-charset-override-alist)) "Alist of encodings and those supersets. The cdr of each element is used to decode data if it is available when the car is what the data specify as the encoding. Or, the car is used diff -r a7d43c06a61a -r e0cd45299f77 lisp/gnus/rfc2047.el --- a/lisp/gnus/rfc2047.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/gnus/rfc2047.el Sun Jul 15 01:50:59 2007 +0000 @@ -55,7 +55,7 @@ (require 'ietf-drums) ;; Fixme: Avoid this (used for mail-parse-charset) mm dependence on gnus. (require 'mail-prsvr) -(require 'base64) +(require 'rfc2045) ;; rfc2045-encode-string (autoload 'mm-body-7-or-8 "mm-bodies") (eval-and-compile @@ -832,12 +832,9 @@ \(defalias 'mail-header-encode-parameter 'rfc2047-encode-parameter) " - (let* ((rfc2047-encoding-type 'mime) - (rfc2047-encode-max-chars nil) - (string (rfc2047-encode-string value))) - (if (string-match (concat "[" ietf-drums-tspecials "]") string) - (format "%s=%S" param string) - (concat param "=" string)))) + (let ((rfc2047-encoding-type 'mime) + (rfc2047-encode-max-chars nil)) + (rfc2045-encode-string param (rfc2047-encode-string value)))) ;;; ;;; Functions for decoding RFC2047 messages diff -r a7d43c06a61a -r e0cd45299f77 lisp/pcvs-info.el --- a/lisp/pcvs-info.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/pcvs-info.el Sun Jul 15 01:50:59 2007 +0000 @@ -85,9 +85,9 @@ (defface cvs-unknown '((((class color) (background dark)) - (:foreground "red")) + (:foreground "red1")) (((class color) (background light)) - (:foreground "red")) + (:foreground "red1")) (t (:slant italic))) "PCL-CVS face used to highlight unknown file status." :group 'pcl-cvs) diff -r a7d43c06a61a -r e0cd45299f77 lisp/progmodes/gdb-ui.el --- a/lisp/progmodes/gdb-ui.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/progmodes/gdb-ui.el Sun Jul 15 01:50:59 2007 +0000 @@ -1765,7 +1765,7 @@ (defface breakpoint-enabled '((t - :foreground "red" + :foreground "red1" :weight bold)) "Face for enabled breakpoint icon in fringe." :group 'gud) diff -r a7d43c06a61a -r e0cd45299f77 lisp/replace.el --- a/lisp/replace.el Sun Jul 15 01:34:15 2007 +0000 +++ b/lisp/replace.el Sun Jul 15 01:50:59 2007 +0000 @@ -860,7 +860,7 @@ (defface match '((((class color) (min-colors 88) (background light)) - :background "yellow") + :background "yellow1") (((class color) (min-colors 88) (background dark)) :background "RoyalBlue3") (((class color) (min-colors 8) (background light)) diff -r a7d43c06a61a -r e0cd45299f77 lispref/ChangeLog --- a/lispref/ChangeLog Sun Jul 15 01:34:15 2007 +0000 +++ b/lispref/ChangeLog Sun Jul 15 01:50:59 2007 +0000 @@ -2,6 +2,10 @@ * control.texi (Handling Errors): Document `debug' in handler list. +2007-07-10 Richard Stallman + + * display.texi (Defining Faces): Explain C-M-x feature for defface. + 2007-07-09 Richard Stallman * files.texi (Magic File Names): Rewrite previous change. diff -r a7d43c06a61a -r e0cd45299f77 lispref/display.texi --- a/lispref/display.texi Sun Jul 15 01:34:15 2007 +0000 +++ b/lispref/display.texi Sun Jul 15 01:50:59 2007 +0000 @@ -1760,6 +1760,11 @@ @var{spec}, then uses any customizations that were read from the init file (@pxref{Init File}) to override that specification. +When you evaluate a @code{defcustom} form with @kbd{C-M-x} in Emacs +Lisp mode (@code{eval-defun}), a special feature of @code{eval-defun} +overrides any customizations of the face. This way, the face reflects +exactly what the @code{defcustom} says. + The purpose of @var{spec} is to specify how the face should appear on different kinds of terminals. It should be an alist whose elements have the form @code{(@var{display} @var{atts})}. Each element's diff -r a7d43c06a61a -r e0cd45299f77 nt/ChangeLog --- a/nt/ChangeLog Sun Jul 15 01:34:15 2007 +0000 +++ b/nt/ChangeLog Sun Jul 15 01:50:59 2007 +0000 @@ -3,6 +3,12 @@ * inc/sys/socket.h: Include winsock2.h and ws2tcpip.h instead of winsock.h. +2007-07-11 Jason Rumney + + * gmake.defs (OLE32): New library to link. + + * nmake.defs (OLE32): Likewise. + 2007-06-25 Jason Rumney * cmdproxy.c (main): Set console codepages to "ANSI". diff -r a7d43c06a61a -r e0cd45299f77 nt/gmake.defs --- a/nt/gmake.defs Sun Jul 15 01:34:15 2007 +0000 +++ b/nt/gmake.defs Sun Jul 15 01:50:59 2007 +0000 @@ -176,8 +176,9 @@ SHELL32 = -lshell32 USER32 = -luser32 WSOCK32 = -lwsock32 -WINMM = -lwinmm +WINMM = -lwinmm WINSPOOL = -lwinspool +OLE32 = -lole32 ifdef NOOPT DEBUG_CFLAGS = -DEMACSDEBUG diff -r a7d43c06a61a -r e0cd45299f77 nt/nmake.defs --- a/nt/nmake.defs Sun Jul 15 01:34:15 2007 +0000 +++ b/nt/nmake.defs Sun Jul 15 01:50:59 2007 +0000 @@ -123,8 +123,9 @@ SHELL32 = shell32.lib USER32 = user32.lib WSOCK32 = wsock32.lib -WINMM = winmm.lib +WINMM = winmm.lib WINSPOOL = winspool.lib +OLE32 = ole32.lib !ifdef NOOPT DEBUG_CFLAGS = -DEMACSDEBUG diff -r a7d43c06a61a -r e0cd45299f77 src/ChangeLog --- a/src/ChangeLog Sun Jul 15 01:34:15 2007 +0000 +++ b/src/ChangeLog Sun Jul 15 01:50:59 2007 +0000 @@ -36,6 +36,13 @@ * term.c: Include unistd.h only if HAVE_UNISTD_H. +2007-07-11 Jason Rumney + + * makefile.w32-in (LIBS): Include OLE32. + + * w32fns.c (w32_msg_pump) : Initialize COM. + (w32_msg_pump) : Uninitialize COM. + 2007-07-11 Stefan Monnier * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer. @@ -1206,13 +1213,13 @@ when popup menu finishes. * w32fns.c (menubar_in_use): New flag. - (w32_wnd_proc) [WM_INITMENU, WM_EXITMENULOOP, WM_TIMER, WM_COMMAND]: + (w32_wnd_proc) : Use it. * w32menu.c (Fx_popup_menu): Don't free menu strings here. (w32_menu_show): Do it here instead. - * w32fns.c (w32_wnd_proc) [WM_INITMENU]: Set menubar_active frame + * w32fns.c (w32_wnd_proc) : Set menubar_active frame parameter. * w32menu.c (current_popup_menu): Make available globally. @@ -1220,7 +1227,7 @@ menu event into the keyboard buffer. Remove menu_command_in_progress. * w32fns.c (current_popup_menu): Use from w32menu.c. - (w32_wnd_proc) [WM_EXITMENULOOP, WM_TIMER]: Use menubar_active + (w32_wnd_proc) : Use menubar_active and current_popup_menu to determine whether a menubar menu has been cancelled. @@ -10331,7 +10338,7 @@ * w32term.h (x_output): Add focus_state. * w32term.c (x_focus_changed, w32_detect_focus_change): New functions. - (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change. + (w32_read_socket) : Call w32_detect_focus_change. 2005-03-25 Stefan Monnier @@ -13624,7 +13631,7 @@ * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c. - * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]: + * w32fns.c (w32_wnd_proc) : Handle Unicode menu titles. 2004-09-07 Kim F. Storm diff -r a7d43c06a61a -r e0cd45299f77 src/makefile.w32-in --- a/src/makefile.w32-in Sun Jul 15 01:34:15 2007 +0000 +++ b/src/makefile.w32-in Sun Jul 15 01:50:59 2007 +0000 @@ -138,7 +138,7 @@ $(TLIB1) \ $(TLIBW32) \ $(TLASTLIB) \ - $(WINMM) \ + $(WINMM) \ $(ADVAPI32) \ $(GDI32) \ $(COMDLG32) \ @@ -146,6 +146,7 @@ $(MPR) \ $(SHELL32) \ $(WINSPOOL) \ + $(OLE32) \ $(libc) # diff -r a7d43c06a61a -r e0cd45299f77 src/w32fns.c --- a/src/w32fns.c Sun Jul 15 01:34:15 2007 +0000 +++ b/src/w32fns.c Sun Jul 15 01:50:59 2007 +0000 @@ -52,6 +52,7 @@ #include #include #include +#include #include #define FILE_NAME_TEXT_FIELD edt1 @@ -2514,6 +2515,13 @@ /* Produced by complete_deferred_msg; just ignore. */ break; case WM_EMACS_CREATEWINDOW: + /* Initialize COM for this window. Even though we don't use it, + some third party shell extensions can cause it to be used in + system dialogs, which causes a crash if it is not initialized. + This is a known bug in Windows, which was fixed long ago, but + the patch for XP is not publically available until XP SP3, + and older versions will never be patched. */ + CoInitialize (NULL); w32_createwindow ((struct frame *) msg.wParam); if (!PostThreadMessage (dwMainThreadId, WM_EMACS_DONE, 0, 0)) abort (); @@ -3660,6 +3668,10 @@ my_post_msg (&wmsg, hwnd, msg, wParam, lParam); goto dflt; + case WM_DESTROY: + CoUninitialize (); + return 0; + case WM_CLOSE: wmsg.dwModifiers = w32_get_modifiers (); my_post_msg (&wmsg, hwnd, msg, wParam, lParam);