summaryrefslogtreecommitdiff
path: root/lisp/gnus/nnimap.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2011-01-31 04:41:38 +0000
committerKatsumi Yamaoka <yamaoka@jpl.org>2011-01-31 04:41:38 +0000
commit0832490d4431f3952c0c45de0d9c30ce0f8cc5c2 (patch)
tree16a4747145a664b1f4adbccf088381d7fbb7ac27 /lisp/gnus/nnimap.el
parent1d88c091cc6b007f1f8a2adf4d57cd67577c0f9c (diff)
downloademacs-0832490d4431f3952c0c45de0d9c30ce0f8cc5c2.tar.gz
nnimap.el (nnimap-wait-for-response): Wait for results in a more secure manner.
gnus-art.el (article-update-date-lapsed): Try to avoid having point move around by not using save-window-excursion. It seems to work...
Diffstat (limited to 'lisp/gnus/nnimap.el')
-rw-r--r--lisp/gnus/nnimap.el19
1 files changed, 8 insertions, 11 deletions
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el
index 04e4bd6c9a2..005f60b5c7d 100644
--- a/lisp/gnus/nnimap.el
+++ b/lisp/gnus/nnimap.el
@@ -1589,17 +1589,14 @@ textual parts.")
(goto-char (point-max))
(while (and (setq openp (memq (process-status process)
'(open run)))
- (not (re-search-backward
- (format "^%d .*\n" sequence)
- (if nnimap-streaming
- (max (point-min)
- (min
- (- (point) 500)
- (save-excursion
- (forward-line -3)
- (point))))
- (point-min))
- t)))
+ (progn
+ ;; Skip past any "*" lines that the server has
+ ;; output.
+ (while (and (not (bobp))
+ (progn
+ (forward-line -1)
+ (looking-at "\\*"))))
+ (not (looking-at (format "%d " sequence)))))
(when messagep
(nnheader-message 7 "nnimap read %dk" (/ (buffer-size) 1000)))
(nnheader-accept-process-output process)