summaryrefslogtreecommitdiff
path: root/lisp/gnus/nnimap.el
diff options
context:
space:
mode:
authorLars Magne Ingebrigtsen <larsi@gnus.org>2015-02-15 23:11:41 +0000
committerKatsumi Yamaoka <yamaoka@jpl.org>2015-02-15 23:11:41 +0000
commit0d38b2f403fa873159138b194c0d45bc4c7e61cc (patch)
tree7507eeed00b327bf79f40307c19cf454e40f53fb /lisp/gnus/nnimap.el
parent6090b8f68dfc37bfe8bee539fc43149f9dd5d6bb (diff)
downloademacs-0d38b2f403fa873159138b194c0d45bc4c7e61cc.tar.gz
Don't mark nnimap articles as read on a server hangup
* 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).
Diffstat (limited to 'lisp/gnus/nnimap.el')
-rw-r--r--lisp/gnus/nnimap.el2
1 files changed, 2 insertions, 0 deletions
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index e7f91b7cc33..4a9ca744b9f 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -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