Changes committed gnus/lisp (ChangeLog gnus-art.el gnus-xmas.el message.el)

"Katsumi Yamaoka" <[email protected]> Wed, 06 Jan 2010 10:24:26 +0100
Newsgroups gmane.emacs.gnus.commits
Message-ID <[email protected]>
Modified: ChangeLog gnus-art.el gnus-xmas.el message.el

* gnus-art.el (gnus-article-describe-bindings): Work for prefix keys.

* gnus-xmas.el (gnus-xmas-article-describe-bindings): Ditto.

* message.el (message-check-news-header-syntax): Protect against a
string that `rfc822-addresses' returns when parsing fails.


Index: ChangeLog
diff -u gnus/lisp/ChangeLog:7.2049 gnus/lisp/ChangeLog:7.2050
--- ChangeLog:7.2049	Wed Jan  6 01:09:49 2010
+++ ChangeLog	Wed Jan  6 10:24:25 2010
@@ -1,5 +1,14 @@
 2010-01-06  Katsumi Yamaoka  <[email protected]>
 
+	* gnus-art.el (gnus-article-describe-bindings): Work for prefix keys.
+
+	* gnus-xmas.el (gnus-xmas-article-describe-bindings): Ditto.
+
+	* message.el (message-check-news-header-syntax): Protect against a
+	string that `rfc822-addresses' returns when parsing fails.
+
+2010-01-06  Katsumi Yamaoka  <[email protected]>
+
 	* gnus-util.el (gnus-invisible-p, gnus-next-char-property-change)
 	(gnus-previous-char-property-change): New functions.
 
Index: gnus-art.el
diff -u gnus/lisp/gnus-art.el:7.298 gnus/lisp/gnus-art.el:7.299
--- gnus-art.el:7.298	Mon Oct 26 00:20:58 2009
+++ gnus-art.el	Wed Jan  6 10:24:25 2010
@@ -6477,10 +6477,17 @@
   (let ((keymap (copy-keymap gnus-article-mode-map))
 	(map (copy-keymap gnus-article-send-map))
 	(sumkeys (where-is-internal 'gnus-article-read-summary-keys))
-	agent draft)
+	parent agent draft)
     (define-key keymap "S" map)
     (define-key map [t] nil)
     (with-current-buffer gnus-article-current-summary
+      (set-keymap-parent
+       keymap
+       (if (setq parent (keymap-parent gnus-article-mode-map))
+	   (prog1
+	       (setq parent (copy-keymap parent))
+	     (set-keymap-parent parent (current-local-map)))
+	 (current-local-map)))
       (set-keymap-parent map (key-binding "S"))
       (let (key def gnus-pick-mode)
 	(while sumkeys
Index: gnus-xmas.el
diff -u gnus/lisp/gnus-xmas.el:7.27 gnus/lisp/gnus-xmas.el:7.28
--- gnus-xmas.el:7.27	Fri Oct 16 09:05:30 2009
+++ gnus-xmas.el	Wed Jan  6 10:24:25 2010
@@ -362,10 +362,17 @@
   (let ((keymap (copy-keymap gnus-article-mode-map))
 	(map (copy-keymap gnus-article-send-map))
 	(sumkeys (where-is-internal 'gnus-article-read-summary-keys))
-	agent draft)
+	parent agent draft)
     (define-key keymap "S" map)
     (set-keymap-default-binding map nil)
     (with-current-buffer gnus-article-current-summary
+      (set-keymap-parent
+       keymap
+       (if (setq parent (keymap-parent gnus-article-mode-map))
+	   (prog1
+	       (setq parent (copy-keymap parent))
+	     (set-keymap-parent parent (current-local-map)))
+	 (current-local-map)))
       (let ((def (key-binding "S"))
 	    gnus-pick-mode)
 	(set-keymap-parent map (if (symbolp def)
Index: message.el
diff -u gnus/lisp/message.el:7.286 gnus/lisp/message.el:7.287
--- message.el:7.286	Tue Jan  5 03:22:52 2010
+++ message.el	Wed Jan  6 10:24:25 2010
@@ -5039,7 +5039,8 @@
 	  "Denied posting -- the From looks strange: \"%s\"." from)
 	 nil)
 	((let ((addresses (rfc822-addresses from)))
-	   (while (and addresses
+	   ;; `rfc822-addresses' returns a string if parsing fails.
+	   (while (and (consp addresses)
 		       (not (eq (string-to-char (car addresses)) ?\()))
 	     (setq addresses (cdr addresses)))
 	   addresses)