emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r105293: Merge changes made in Gnus t


From: Katsumi Yamaoka
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r105293: Merge changes made in Gnus trunk.
Date: Wed, 20 Jul 2011 14:19:52 +0000
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 105293
author: Andrew Cohen <address@hidden>
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Wed 2011-07-20 14:19:52 +0000
message:
  Merge changes made in Gnus trunk.
  
  nnimap.el (nnimap-make-thread-query): New utility function to format an imap 
thread search query.
   (nnimap-request-thread): Use it.
  gnus-sum.el (gnus-handle-ephemeral-exit): Ensure we are setting the right 
select-method if we are not going back to the group buffer.
modified:
  lisp/gnus/ChangeLog
  lisp/gnus/gnus-sum.el
  lisp/gnus/nnimap.el
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog       2011-07-19 22:19:06 +0000
+++ b/lisp/gnus/ChangeLog       2011-07-20 14:19:52 +0000
@@ -1,3 +1,12 @@
+2011-07-20  Andrew Cohen  <address@hidden>
+
+       * nnimap.el (nnimap-make-thread-query): New utility function to format
+       an imap thread search query.
+       (nnimap-request-thread): Use it.
+
+       * gnus-sum.el (gnus-handle-ephemeral-exit): Ensure we are setting the
+       right select-method if we are not going back to the group buffer.
+
 2011-07-19  Lars Magne Ingebrigtsen  <address@hidden>
 
        * gnus-group.el (gnus-group-read-ephemeral-group): Make sure we don't

=== modified file 'lisp/gnus/gnus-sum.el'
--- a/lisp/gnus/gnus-sum.el     2011-07-19 22:19:06 +0000
+++ b/lisp/gnus/gnus-sum.el     2011-07-20 14:19:52 +0000
@@ -7339,6 +7339,9 @@
   (if (not (buffer-name (car quit-config)))
       (gnus-configure-windows 'group 'force)
     (set-buffer (car quit-config))
+    (unless (eq (cdr quit-config) 'group)
+      (setq gnus-current-select-method
+           (gnus-find-method-for-group gnus-newsgroup-name)))
     (cond ((eq major-mode 'gnus-summary-mode)
           (gnus-set-global-variables))
          ((eq major-mode 'gnus-article-mode)

=== modified file 'lisp/gnus/nnimap.el'
--- a/lisp/gnus/nnimap.el       2011-07-14 14:19:53 +0000
+++ b/lisp/gnus/nnimap.el       2011-07-20 14:19:52 +0000
@@ -1567,25 +1567,14 @@
 
 (deffoo nnimap-request-thread (header &optional group server)
   (when (nnimap-possibly-change-group group server)
-      (let* ((id (mail-header-id header))
-        (refs (split-string
-               (or (mail-header-references header)
-                   "")))
-        (cmd (let ((value
-                    (format
-                     "(OR HEADER REFERENCES %s HEADER Message-Id %s)"
-                     id id)))
-               (dolist (refid refs value)
-                 (setq value (format
-                              "(OR (OR HEADER Message-Id %s HEADER REFERENCES 
%s) %s)"
-                              refid refid value)))))
-        (result (with-current-buffer (nnimap-buffer)
-                  (nnimap-command  "UID SEARCH %s" cmd))))
-    (when result
-      (gnus-fetch-headers
-       (and (car result) (delete 0 (mapcar #'string-to-number
-                                          (cdr (assoc "SEARCH" (cdr 
result))))))
-       nil t)))))
+    (let* ((cmd (nnimap-make-thread-query header))
+          (result (with-current-buffer (nnimap-buffer)
+                    (nnimap-command  "UID SEARCH %s" cmd))))
+      (when result
+       (gnus-fetch-headers
+        (and (car result) (delete 0 (mapcar #'string-to-number
+                                            (cdr (assoc "SEARCH" (cdr 
result))))))
+        nil t)))))
 
 (defun nnimap-possibly-change-group (group server)
   (let ((open-result t))
@@ -1951,6 +1940,21 @@
                  group-art))
          nnimap-incoming-split-list)))
 
+(defun nnimap-make-thread-query (header)
+  (let* ((id  (mail-header-id header))
+        (refs (split-string
+               (or (mail-header-references header)
+                   "")))
+       (value
+        (format
+         "(OR HEADER REFERENCES %s HEADER Message-Id %s)"
+         id id)))
+    (dolist (refid refs value)
+      (setq value (format
+                  "(OR (OR HEADER Message-Id %s HEADER REFERENCES %s) %s)"
+                  refid refid value)))))
+
+
 (provide 'nnimap)
 
 ;;; nnimap.el ends here


reply via email to

[Prev in Thread] Current Thread [Next in Thread]