]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't mark nnimap articles as read on a server hangup
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Sun, 15 Feb 2015 23:11:41 +0000 (23:11 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Sun, 15 Feb 2015 23:11:41 +0000 (23:11 +0000)
* lisp/gnus/nnimap.el (nnimap-retrieve-headers): If the server closes connection
during header retrieval, error out instead of interpreting the data in
the buffer as the only messages there.  This way, we don't mark
articles as read on a server hangup (bug#19035).

lisp/gnus/ChangeLog
lisp/gnus/nnimap.el

index b9ae796782d6242cda5bd373a551afc8bf21d0e2..7910d74fb15101a631ec2731314923694acdf35b 100644 (file)
@@ -1,5 +1,10 @@
 2015-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
 
+       * nnimap.el (nnimap-retrieve-headers): If the server closes connection
+       during header retrieval, error out instead of interpreting the data in
+       the buffer as the only messages there.  This way, we don't mark
+       articles as read on a server hangup (bug#19035).
+
        * mm-decode.el (mm-head-p): New function.
        (mm-display-part): Go to a blank line when inserting parts internally.
 
index e7f91b7cc332b803b58e47a248852dc7ffa89644..4a9ca744b9f69657877d529728b2b1d963fbd2a2 100644 (file)
@@ -196,6 +196,8 @@ textual parts.")
          (nnimap-article-ranges (gnus-compress-sequence articles))
          (nnimap-header-parameters))
         t)
+       (unless (process-live-p (get-buffer-process (current-buffer)))
+         (error "Server closed connection"))
        (nnimap-transform-headers)
        (nnheader-remove-cr-followed-by-lf))
       (insert-buffer-substring