[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r109828: [Gnus] Miscellaneous fixes b
From: |
Katsumi Yamaoka |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r109828: [Gnus] Miscellaneous fixes by Dave Abrahams |
Date: |
Fri, 31 Aug 2012 04:39:30 +0000 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 109828
author: Dave Abrahams <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Fri 2012-08-31 04:39:30 +0000
message:
[Gnus] Miscellaneous fixes by Dave Abrahams
modified:
lisp/gnus/ChangeLog
lisp/gnus/auth-source.el
lisp/gnus/gnus-int.el
lisp/gnus/gnus-range.el
lisp/gnus/gnus-registry.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2012-08-31 00:46:01 +0000
+++ b/lisp/gnus/ChangeLog 2012-08-31 04:39:30 +0000
@@ -1,3 +1,19 @@
+2012-08-31 Dave Abrahams <address@hidden>
+
+ * auth-source.el (auth-sources): Fix macos keychain access.
+
+ * gnus-int.el (gnus-request-head): When gnus-override-method is set,
+ allow the backend `request-head' function to determine the group
+ name on its own.
+ (gnus-request-expire-articles): Filter out negative article numbers
+ during expiry (Bug#11980).
+
+ * gnus-range.el (gnus-set-difference): Change gnus-set-difference from
+ O(N^2) to O(N). This makes warping into huge groups tolerable.
+
+ * gnus-registry.el (gnus-try-warping-via-registry): Don't act as though
+ you've found the article when you haven't.
+
2012-08-31 Stefan Monnier <address@hidden>
* gnus-notifications.el (gnus-notifications-action): Avoid CL-ism.
=== modified file 'lisp/gnus/auth-source.el'
--- a/lisp/gnus/auth-source.el 2012-08-10 14:38:37 +0000
+++ b/lisp/gnus/auth-source.el 2012-08-31 04:39:30 +0000
@@ -256,10 +256,10 @@
(const :tag "Temp Secrets API Collection" "secrets:session")
(const :tag "Default internet Mac OS Keychain"
- 'macos-keychain-internet)
+ macos-keychain-internet)
(const :tag "Default generic Mac OS Keychain"
- 'macos-keychain-generic)
+ macos-keychain-generic)
(list :tag "Source definition"
(const :format "" :value :source)
=== modified file 'lisp/gnus/gnus-int.el'
--- a/lisp/gnus/gnus-int.el 2012-07-24 22:17:17 +0000
+++ b/lisp/gnus/gnus-int.el 2012-08-31 04:39:30 +0000
@@ -599,7 +599,8 @@
clean-up t))
;; Use `head' function.
((fboundp head)
- (setq res (funcall head article (gnus-group-real-name group)
+ (setq res (funcall head article
+ (and (not gnus-override-method) (gnus-group-real-name
group))
(nth 1 gnus-command-method))))
;; Use `article' function.
(t
@@ -706,6 +707,10 @@
(defun gnus-request-expire-articles (articles group &optional force)
(let* ((gnus-command-method (gnus-find-method-for-group group))
+ ;; Filter out any negative article numbers; they can't be
+ ;; expired here.
+ (articles
+ (delq nil (mapcar (lambda (n) (and (>= n 0) n)) articles)))
(gnus-inhibit-demon t)
(not-deleted
(funcall
=== modified file 'lisp/gnus/gnus-range.el'
--- a/lisp/gnus/gnus-range.el 2012-07-24 22:17:17 +0000
+++ b/lisp/gnus/gnus-range.el 2012-08-31 04:39:30 +0000
@@ -52,11 +52,13 @@
(defun gnus-set-difference (list1 list2)
"Return a list of elements of LIST1 that do not appear in LIST2."
- (let ((list1 (copy-sequence list1)))
- (while list2
- (setq list1 (delq (car list2) list1))
- (setq list2 (cdr list2)))
- list1))
+ (let ((hash2 (make-hash-table :test 'eq))
+ (result nil))
+ (dolist (elt list2) (puthash elt t hash2))
+ (dolist (elt list1)
+ (unless (gethash elt hash2)
+ (setq result (cons elt result))))
+ (nreverse result)))
(defun gnus-range-nconcat (&rest ranges)
"Return a range comprising all the RANGES, which are pre-sorted.
=== modified file 'lisp/gnus/gnus-registry.el'
--- a/lisp/gnus/gnus-registry.el 2012-06-26 22:52:31 +0000
+++ b/lisp/gnus/gnus-registry.el 2012-08-31 04:39:30 +0000
@@ -1169,9 +1169,10 @@
;; Try to activate the group. If that fails, just move
;; along. We may have more groups to work with
- (ignore-errors
- (gnus-select-group-with-message-id group message-id))
- (throw 'found t)))))))
+ (when
+ (ignore-errors
+ (gnus-select-group-with-message-id group message-id) t)
+ (throw 'found t))))))))
;; TODO: a few things
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r109828: [Gnus] Miscellaneous fixes by Dave Abrahams,
Katsumi Yamaoka <=