[gnus git] branch master updated: m0-5-37-g58d9676 =1= nnimap: use nimap-possibly-change-group in nnimap-find-article-by-message-id

Julien Danjou <[email protected]>
Newsgroups gmane.emacs.gnus.cvs
Message-ID <[email protected]>
       via  58d967655dc459f0dc4d371d2a8a40624aaa9902 (commit)
      from  639aa37e369cfbe9907f3566601ff2dc337bce0d (commit)


- Log -----------------------------------------------------------------
commit 58d967655dc459f0dc4d371d2a8a40624aaa9902
Author: Julien Danjou <[email protected]>
Date:   Fri Jun 15 10:57:54 2012 +0200

    nnimap: use nimap-possibly-change-group in nnimap-find-article-by-message-id
    
    Signed-off-by: Julien Danjou <[email protected]>

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 20a586e..c548b7e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-15  Julien Danjou  <[email protected]>
+
+	* nnimap.el (nnimap-find-article-by-message-id): Use
+	`nnimap-possibly-change-group' rather than its own EXAMINE call.
+
 2012-06-11  Lars Magne Ingebrigtsen  <[email protected]>
 
 	* gnus-art.el (gnus-article-read-summary-keys): Protect against the key
diff --git a/lisp/nnimap.el b/lisp/nnimap.el
index 5bdf226..d0b8a96 100644
--- a/lisp/nnimap.el
+++ b/lisp/nnimap.el
@@ -561,7 +561,7 @@ textual parts.")
     (let ((result (nnimap-possibly-change-group group server))
 	  parts structure)
       (when (stringp article)
-	(setq article (nnimap-find-article-by-message-id group article)))
+	(setq article (nnimap-find-article-by-message-id group server article)))
       (when (and result
 		 article)
 	(erase-buffer)
@@ -593,7 +593,7 @@ textual parts.")
   (when (nnimap-possibly-change-group group server)
     (with-current-buffer (nnimap-buffer)
       (when (stringp article)
-	(setq article (nnimap-find-article-by-message-id group article)))
+	(setq article (nnimap-find-article-by-message-id group server article)))
       (if (null article)
 	  nil
 	(nnimap-get-whole-article
@@ -867,7 +867,7 @@ textual parts.")
 		(cons internal-move-group
 		      (or (nnimap-find-uid-response "COPYUID" (cadr result))
 			  (nnimap-find-article-by-message-id
-			   internal-move-group message-id)))))
+			   internal-move-group server message-id)))))
 	  ;; Move the article to a different method.
 	  (let ((result (eval accept-form)))
 	    (when result
@@ -969,13 +969,11 @@ textual parts.")
 			       (cdr (assoc "SEARCH" (cdr result))))))))))
 
 
-(defun nnimap-find-article-by-message-id (group message-id)
+(defun nnimap-find-article-by-message-id (group server message-id &optional recent)
+  "Search for message with MESSAGE-ID in GROUP from SERVER."
   (with-current-buffer (nnimap-buffer)
     (erase-buffer)
-    (unless (equal group (nnimap-group nnimap-object))
-      (setf (nnimap-group nnimap-object) nil)
-      (setf (nnimap-examined nnimap-object) group)
-      (nnimap-send-command "EXAMINE %S" (utf7-encode group t)))
+    (nnimap-possibly-change-group group server)
     (let ((sequence
 	   (nnimap-send-command "UID SEARCH HEADER Message-Id %S" message-id))
 	  article result)
@@ -1093,7 +1091,7 @@ textual parts.")
 	      (cons group
 		    (or (nnimap-find-uid-response "APPENDUID" (car result))
 			(nnimap-find-article-by-message-id
-			 group message-id))))))))))
+			 group server message-id))))))))))
 
 (defun nnimap-process-quirk (greeting-match type data)
   (when (and (nnimap-greeting nnimap-object)

-----------------------------------------------------------------------
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we listed those
revisions in full, above.

Summary of changes:
 lisp/ChangeLog |    5 +++++
 lisp/nnimap.el |   16 +++++++---------
 2 files changed, 12 insertions(+), 9 deletions(-)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Gnus Project".

The branch, master has been updated


hooks/post-receive
-- 
Gnus Project
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.