aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2007-12-09 22:14:32 +0000
committerMiles Bader2007-12-09 22:14:32 +0000
commit21ee0911f749a8dfaf97d13075bfec4862c06161 (patch)
tree3740d08b42ef85f5a1ea28f6f4e7b0f9853b5d78
parent0e250bf8782b236076a03f470eab9ce3a26bccb5 (diff)
downloademacs-21ee0911f749a8dfaf97d13075bfec4862c06161.tar.gz
emacs-21ee0911f749a8dfaf97d13075bfec4862c06161.zip
Merge from gnus--devo--0
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-950
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/gnus/ChangeLog12
-rw-r--r--lisp/gnus/nnmaildir.el22
-rw-r--r--lisp/mail/hashcash.el14
-rw-r--r--lisp/net/imap.el12
-rw-r--r--lisp/pgg-parse.el4
-rw-r--r--lisp/pgg.el1
7 files changed, 57 insertions, 15 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 5c44fc072ef..db5930b7db6 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12007-12-09 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * mail/hashcash.el, net/imap.el, pgg.el, pgg-parse.el
4 (declare-function): Add new no-op macro for backward compatibility.
5
6 * net/imap.el (imap-string-to-integer): New function.
7
12007-12-09 David Kastrup <dak@gnu.org> 82007-12-09 David Kastrup <dak@gnu.org>
2 9
3 * emacs-lisp/lisp-mnt.el (lm-verify): Make it work with 10 * emacs-lisp/lisp-mnt.el (lm-verify): Make it work with
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index e54a5f4783e..4bddd344115 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -31,6 +31,18 @@
31 31
32 * gnus-start.el (gnus-load): Rename local variable to avoid confusion. 32 * gnus-start.el (gnus-load): Rename local variable to avoid confusion.
33 33
342007-12-06 Christian Plate <cplate@web.de> (tiny change)
35
36 * nnmaildir.el (nnmaildir-request-update-info): Improved performance.
37 Call gnus-add-to-range ranges only once with a prepared article-list.
38
392007-12-06 Paul Jarc <prj@po.cwru.edu>
40
41 * nnmaildir.el (nnmaildir-request-list, nnmaildir-retrieve-groups,
42 nnmaildir-request-group, nnmaildir-retrieve-headers): Escape spaces in
43 group names with backslashes. Reported by Tassilo Horn
44 <tassilo@member.fsf.org>.
45
342007-12-06 D. Goel <deego3@gmail.com> 462007-12-06 D. Goel <deego3@gmail.com>
35 47
36 * gnus-art.el (article-make-date-line): 48 * gnus-art.el (article-make-date-line):
diff --git a/lisp/gnus/nnmaildir.el b/lisp/gnus/nnmaildir.el
index e7674168484..829b3761cd3 100644
--- a/lisp/gnus/nnmaildir.el
+++ b/lisp/gnus/nnmaildir.el
@@ -884,7 +884,9 @@ by nnmaildir-request-article.")
884 pgname (nnmaildir--pgname nnmaildir--cur-server pgname) 884 pgname (nnmaildir--pgname nnmaildir--cur-server pgname)
885 group (symbol-value group) 885 group (symbol-value group)
886 ro (nnmaildir--param pgname 'read-only)) 886 ro (nnmaildir--param pgname 'read-only))
887 (insert (nnmaildir--grp-name group) " ") 887 (insert (gnus-replace-in-string
888 (nnmaildir--grp-name group) " " "\\ " t)
889 " ")
888 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group) 890 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group)
889 nntp-server-buffer) 891 nntp-server-buffer)
890 (insert " ") 892 (insert " ")
@@ -911,14 +913,17 @@ by nnmaildir-request-article.")
911 (insert " ") 913 (insert " ")
912 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group) 914 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group)
913 nntp-server-buffer) 915 nntp-server-buffer)
914 (insert " " gname "\n"))))) 916 (insert " "
917 (gnus-replace-in-string gname " " "\\ " t)
918 "\n")))))
915 'group) 919 'group)
916 920
917(defun nnmaildir-request-update-info (gname info &optional server) 921(defun nnmaildir-request-update-info (gname info &optional server)
918 (let ((group (nnmaildir--prepare server gname)) 922 (let ((group (nnmaildir--prepare server gname))
919 pgname flist always-marks never-marks old-marks dotfile num dir 923 pgname flist always-marks never-marks old-marks dotfile num dir
920 markdirs marks mark ranges markdir article read end new-marks ls 924 markdirs marks mark ranges markdir article read end new-marks ls
921 old-mmth new-mmth mtime mark-sym existing missing deactivate-mark) 925 old-mmth new-mmth mtime mark-sym existing missing deactivate-mark
926 article-list)
922 (catch 'return 927 (catch 'return
923 (unless group 928 (unless group
924 (setf (nnmaildir--srv-error nnmaildir--cur-server) 929 (setf (nnmaildir--srv-error nnmaildir--cur-server)
@@ -966,12 +971,13 @@ by nnmaildir-request-article.")
966 (setq ranges (assq mark-sym old-marks)) 971 (setq ranges (assq mark-sym old-marks))
967 (if ranges (setq ranges (cdr ranges))) 972 (if ranges (setq ranges (cdr ranges)))
968 (throw 'got-ranges nil)) 973 (throw 'got-ranges nil))
974 (setq article-list nil)
969 (dolist (prefix (funcall ls markdir nil "\\`[^.]" 'nosort)) 975 (dolist (prefix (funcall ls markdir nil "\\`[^.]" 'nosort))
970 (setq article (nnmaildir--flist-art flist prefix)) 976 (setq article (nnmaildir--flist-art flist prefix))
971 (if article 977 (if article
972 (setq ranges 978 (setq article-list
973 (gnus-add-to-range ranges 979 (cons (nnmaildir--art-num article) article-list))))
974 `(,(nnmaildir--art-num article))))))) 980 (setq ranges (gnus-add-to-range ranges (sort article-list '<))))
975 (if (eq mark-sym 'read) (setq read ranges) 981 (if (eq mark-sym 'read) (setq read ranges)
976 (if ranges (setq marks (cons (cons mark-sym ranges) marks))))) 982 (if ranges (setq marks (cons (cons mark-sym ranges) marks)))))
977 (gnus-info-set-read info (gnus-range-add read missing)) 983 (gnus-info-set-read info (gnus-range-add read missing))
@@ -999,7 +1005,7 @@ by nnmaildir-request-article.")
999 (insert " ") 1005 (insert " ")
1000 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group) 1006 (princ (nnmaildir--group-maxnum nnmaildir--cur-server group)
1001 nntp-server-buffer) 1007 nntp-server-buffer)
1002 (insert " " gname "\n") 1008 (insert " " (gnus-replace-in-string gname " " "\\ " t) "\n")
1003 t)))) 1009 t))))
1004 1010
1005(defun nnmaildir-request-create-group (gname &optional server args) 1011(defun nnmaildir-request-create-group (gname &optional server args)
@@ -1161,7 +1167,7 @@ by nnmaildir-request-article.")
1161 (insert "\t" (nnmaildir--nov-get-beg nov) "\t" 1167 (insert "\t" (nnmaildir--nov-get-beg nov) "\t"
1162 (nnmaildir--art-msgid article) "\t" 1168 (nnmaildir--art-msgid article) "\t"
1163 (nnmaildir--nov-get-mid nov) "\tXref: nnmaildir " 1169 (nnmaildir--nov-get-mid nov) "\tXref: nnmaildir "
1164 gname ":") 1170 (gnus-replace-in-string gname " " "\\ " t) ":")
1165 (princ num nntp-server-buffer) 1171 (princ num nntp-server-buffer)
1166 (insert "\t" (nnmaildir--nov-get-end nov) "\n")))) 1172 (insert "\t" (nnmaildir--nov-get-end nov) "\n"))))
1167 (catch 'return 1173 (catch 'return
diff --git a/lisp/mail/hashcash.el b/lisp/mail/hashcash.el
index 1f4483a7c94..36cd17fe6fc 100644
--- a/lisp/mail/hashcash.el
+++ b/lisp/mail/hashcash.el
@@ -115,13 +115,15 @@ For example, you may want to set this to '(\"-Z2\") to reduce header length."
115(require 'mail-utils) 115(require 'mail-utils)
116 116
117(eval-and-compile 117(eval-and-compile
118 (if (fboundp 'point-at-bol) 118 (unless (fboundp 'declare-function) (defmacro declare-function (&rest r)))
119 (defalias 'hashcash-point-at-bol 'point-at-bol)
120 (defalias 'hashcash-point-at-bol 'line-beginning-position))
121 119
122 (if (fboundp 'point-at-eol) 120 (if (fboundp 'point-at-bol)
123 (defalias 'hashcash-point-at-eol 'point-at-eol) 121 (defalias 'hashcash-point-at-bol 'point-at-bol)
124 (defalias 'hashcash-point-at-eol 'line-end-position))) 122 (defalias 'hashcash-point-at-bol 'line-beginning-position))
123
124 (if (fboundp 'point-at-eol)
125 (defalias 'hashcash-point-at-eol 'point-at-eol)
126 (defalias 'hashcash-point-at-eol 'line-end-position)))
125 127
126(defun hashcash-strip-quoted-names (addr) 128(defun hashcash-strip-quoted-names (addr)
127 (setq addr (mail-strip-quoted-names addr)) 129 (setq addr (mail-strip-quoted-names addr))
diff --git a/lisp/net/imap.el b/lisp/net/imap.el
index 85af73972fe..40e41d79de7 100644
--- a/lisp/net/imap.el
+++ b/lisp/net/imap.el
@@ -1735,6 +1735,18 @@ is non-nil return these properties."
1735 (concat "UID STORE " articles 1735 (concat "UID STORE " articles
1736 " +FLAGS" (if silent ".SILENT") " (" flags ")")))))) 1736 " +FLAGS" (if silent ".SILENT") " (" flags ")"))))))
1737 1737
1738;; Cf. http://thread.gmane.org/gmane.emacs.gnus.general/65317/focus=65343
1739;; Signal an error if we'd get an integer overflow.
1740;;
1741;; FIXME: Identify relevant calls to `string-to-number' and replace them with
1742;; `imap-string-to-integer'.
1743(defun imap-string-to-integer (string &optional base)
1744 (let ((number (string-to-number string base)))
1745 (if (> number most-positive-fixnum)
1746 (error
1747 (format "String %s cannot be converted to a lisp integer" number))
1748 number)))
1749
1738(defun imap-message-copyuid-1 (mailbox) 1750(defun imap-message-copyuid-1 (mailbox)
1739 (if (imap-capability 'UIDPLUS) 1751 (if (imap-capability 'UIDPLUS)
1740 (list (nth 0 (imap-mailbox-get-1 'copyuid mailbox)) 1752 (list (nth 0 (imap-mailbox-get-1 'copyuid mailbox))
diff --git a/lisp/pgg-parse.el b/lisp/pgg-parse.el
index 336c492efde..87bafc08fd4 100644
--- a/lisp/pgg-parse.el
+++ b/lisp/pgg-parse.el
@@ -36,7 +36,9 @@
36 36
37;;; Code: 37;;; Code:
38 38
39(eval-when-compile (require 'cl)) 39(eval-when-compile
40 (unless (fboundp 'declare-function) (defmacro declare-function (&rest r)))
41 (require 'cl))
40 42
41(defgroup pgg-parse () 43(defgroup pgg-parse ()
42 "OpenPGP packet parsing." 44 "OpenPGP packet parsing."
diff --git a/lisp/pgg.el b/lisp/pgg.el
index 6e4a2a874ec..74b6ed7cb22 100644
--- a/lisp/pgg.el
+++ b/lisp/pgg.el
@@ -35,6 +35,7 @@
35 35
36;; Don't merge these two `eval-when-compile's. 36;; Don't merge these two `eval-when-compile's.
37(eval-when-compile 37(eval-when-compile
38 (unless (fboundp 'declare-function) (defmacro declare-function (&rest r)))
38 (require 'cl)) 39 (require 'cl))
39 40
40;;; @ utility functions 41;;; @ utility functions