]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge changes made in Gnus trunk.
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Mon, 30 May 2011 22:11:52 +0000 (22:11 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Mon, 30 May 2011 22:11:52 +0000 (22:11 +0000)
gnus-group.el (gnus-group-mark-article-read): It's possible that we want to have `gnus-newsgroup-unselected' kept sorted.  If this isn't done, then unselected articles may be marked as read.
pop3.el (pop3-open-server): Erase the buffer after the greeting, since not doing this seems to lead to a race condition in pop3-logon.
nnvirtual.el (nnvirtual-request-article): Bind `gnus-command-method' so that the call chain it correct when we call "upwards".
gnus-sum.el (gnus-select-newsgroup): Auto-expiry doesn't make sense in read-only groups.
gnus-group.el (gnus-group-mark-article-read): Ditto.
message.el (message-cite-reply-position): Doc string fix.
nnimap.el (nnimap-transform-headers): Simplify regexp to hopefully avoid regexp overflow.
 (nnimap-transform-split-mail): Ditto.
pop3.el (pop3-retr): Error out if the server closes the connection.

lisp/gnus/ChangeLog
lisp/gnus/gnus-group.el
lisp/gnus/gnus-sum.el
lisp/gnus/message.el
lisp/gnus/nnimap.el
lisp/gnus/nnvirtual.el
lisp/gnus/pop3.el

index 5a7ea84215314e61749174bdd468162a983a917c..dcbc647950f744202b0ff0d8b0d42ea5a6fce3b1 100644 (file)
@@ -1,3 +1,28 @@
+2011-05-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-group.el (gnus-group-mark-article-read): It's possible that we
+       want to have `gnus-newsgroup-unselected' kept sorted.  If this isn't
+       done, then unselected articles may be marked as read.
+
+       * pop3.el (pop3-open-server): Erase the buffer after the greeting,
+       since not doing this seems to lead to a race condition in pop3-logon.
+
+       * nnvirtual.el (nnvirtual-request-article): Bind `gnus-command-method'
+       so that the call chain it correct when we call "upwards".
+
+       * gnus-sum.el (gnus-select-newsgroup): Auto-expiry doesn't make sense
+       in read-only groups.
+
+       * gnus-group.el (gnus-group-mark-article-read): Ditto.
+
+       * message.el (message-cite-reply-position): Doc string fix.
+
+       * nnimap.el (nnimap-transform-headers): Simplify regexp to hopefully
+       avoid regexp overflow.
+       (nnimap-transform-split-mail): Ditto.
+
+       * pop3.el (pop3-retr): Error out if the server closes the connection.
+
 2011-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * mml1991.el (mml1991-mailcrypt-encrypt): Remove use of ill-designed
index 65192bf173ea140a6be3102d2ae57555b9c5214d..4c474b0aa23f34b533be84a1c9c06c3e4720fbb6 100644 (file)
@@ -3567,7 +3567,8 @@ or nil if no action could be taken."
        (gnus-add-marked-articles group 'tick nil nil 'force)
        (gnus-add-marked-articles group 'dormant nil nil 'force))
       ;; Do auto-expirable marks if that's required.
-      (when (gnus-group-auto-expirable-p group)
+      (when (and (gnus-group-auto-expirable-p group)
+                (not (gnus-group-read-only-p group)))
         (gnus-range-map
         (lambda (article)
           (gnus-add-marked-articles group 'expire (list article))
@@ -4630,10 +4631,11 @@ This command may read the active file."
                  (push n gnus-newsgroup-unselected))
                (setq n (1+ n)))
              (setq gnus-newsgroup-unselected
-                   (nreverse gnus-newsgroup-unselected)))))
+                   (sort gnus-newsgroup-unselected '<)))))
       (gnus-activate-group group)
       (gnus-group-make-articles-read group (list article))
-      (when (gnus-group-auto-expirable-p group)
+      (when (and (gnus-group-auto-expirable-p group)
+                (not (gnus-group-read-only-p group)))
        (gnus-add-marked-articles
         group 'expire (list article))))))
 
index 3ec443743dfa8301570f393f44c3bf4068f1cb24..2d75c35158a93d92a8c8b3480ce4eeb6b4baba4a 100644 (file)
@@ -5715,7 +5715,8 @@ If SELECT-ARTICLES, only select those articles from GROUP."
       (gnus-summary-remove-list-identifiers)
       ;; Check whether auto-expire is to be done in this group.
       (setq gnus-newsgroup-auto-expire
-           (gnus-group-auto-expirable-p group))
+           (and (gnus-group-auto-expirable-p group)
+                (not (gnus-group-read-only-p group))))
       ;; Set up the article buffer now, if necessary.
       (unless (and gnus-single-article-buffer
                   (equal gnus-article-buffer "*Article*"))
index 4d08baa674c958cc1c3b2e5ed3112b1390aa30aa..58740c32e9c03f54944370e51a984f512f82bc39 100644 (file)
@@ -1091,7 +1091,7 @@ Note: Many newsgroups frown upon nontraditional reply styles. You
 probably want to set this variable only for specific groups,
 e.g. using `gnus-posting-styles':
 
-  (eval (set (make-local-variable 'message-cite-reply-above) 'above))"
+  (eval (set (make-local-variable 'message-cite-reply-position) 'above))"
   :type '(choice (const :tag "Reply inline" 'traditional)
                 (const :tag "Reply above" 'above)
                 (const :tag "Reply below" 'below))
index 6882ed63135df3801fcd162d6d2e500557340f6b..dc8b38b8f9a24bc4ea3f77101799b3e3abd69621 100644 (file)
@@ -190,7 +190,7 @@ textual parts.")
   (let (article bytes lines size string)
     (block nil
       (while (not (eobp))
-       (while (not (looking-at "^\\* [0-9]+ FETCH.*UID \\([0-9]+\\)"))
+       (while (not (looking-at "\\* [0-9]+ FETCH.+UID \\([0-9]+\\)"))
          (delete-region (point) (progn (forward-line 1) (point)))
          (when (eobp)
            (return)))
@@ -1904,7 +1904,7 @@ textual parts.")
   (let (article bytes)
     (block nil
       (while (not (eobp))
-       (while (not (looking-at "^\\* [0-9]+ FETCH.*UID \\([0-9]+\\)"))
+       (while (not (looking-at "\\* [0-9]+ FETCH.+UID \\([0-9]+\\)"))
          (delete-region (point) (progn (forward-line 1) (point)))
          (when (eobp)
            (return)))
index 0cc53ad23323d9ee7d06115fa9039c713cede7c5..ea64c247d99fd440d437cadac87f023ab0a38cdf 100644 (file)
@@ -194,10 +194,11 @@ component group will show up when you enter the virtual group.")
            (when buffer
              (set-buffer buffer))
            (let* ((gnus-override-method nil)
-                  (method (gnus-find-method-for-group
-                           nnvirtual-last-accessed-component-group)))
-             (funcall (gnus-get-function method 'request-article)
-                      article nil (nth 1 method) buffer)))))
+                  (gnus-command-method
+                   (gnus-find-method-for-group
+                    nnvirtual-last-accessed-component-group)))
+             (funcall (gnus-get-function gnus-command-method 'request-article)
+                      article nil (nth 1 gnus-command-method) buffer)))))
       ;; This is a fetch by number.
       (let* ((amap (nnvirtual-map-article article))
             (cgroup (car amap)))
index 6f12d3d63e179e07077b12c45cc7dc7e137c13e4..90e11b3ca8f0f8f35cc24aef2493fe04319d6f1d 100644 (file)
@@ -319,6 +319,7 @@ Returns the process associated with the connection."
                (substring response (or (string-match "<" response) 0)
                           (+ 1 (or (string-match ">" response) -1)))))
        (pop3-set-process-query-on-exit-flag (car result) nil)
+       (erase-buffer)
        (car result)))))
 
 ;; Support functions
@@ -514,6 +515,8 @@ Otherwise, return the size of the message-id MSG"
   (let ((start pop3-read-point) end)
     (with-current-buffer (process-buffer process)
       (while (not (re-search-forward "^\\.\r\n" nil t))
+       (unless (memq (process-status process) '(open run))
+         (error "pop3 server closed the connection"))
        (pop3-accept-process-output process)
        (goto-char start))
       (setq pop3-read-point (point-marker))