mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-02-08 20:58:58 +00:00
lisp/gnus/nnimap.el (nnimap-request-group-scan): Further `M-g' group fixes
This commit is contained in:
parent
2c6d035968
commit
f518a387c9
@ -1,3 +1,8 @@
|
||||
2015-02-05 Lars Ingebrigtsen <larsi@gnus.org>
|
||||
|
||||
* nnimap.el (nnimap-request-group-scan): Ensure that we've selected the
|
||||
correct server.
|
||||
|
||||
2015-02-05 Vincent Bernat <bernat@luffy.cx> (tiny change)
|
||||
|
||||
* nnimap.el (nnimap-request-group-scan): Fix the function name.
|
||||
|
@ -822,37 +822,38 @@ textual parts.")
|
||||
|
||||
(deffoo nnimap-request-group-scan (group &optional server info)
|
||||
(setq group (nnimap-decode-gnus-group group))
|
||||
(let (marks high low)
|
||||
(with-current-buffer (nnimap-buffer)
|
||||
(erase-buffer)
|
||||
(let ((group-sequence
|
||||
(nnimap-send-command "SELECT %S" (utf7-encode group t)))
|
||||
(flag-sequence
|
||||
(nnimap-send-command "UID FETCH 1:* FLAGS")))
|
||||
(setf (nnimap-group nnimap-object) group)
|
||||
(nnimap-wait-for-response flag-sequence)
|
||||
(setq marks
|
||||
(nnimap-flags-to-marks
|
||||
(nnimap-parse-flags
|
||||
(list (list group-sequence flag-sequence
|
||||
1 group "SELECT")))))
|
||||
(when (and info
|
||||
marks)
|
||||
(nnimap-update-infos marks (list info))
|
||||
(nnimap-store-info info (gnus-active (gnus-info-group info))))
|
||||
(goto-char (point-max))
|
||||
(let ((uidnext (nth 5 (car marks))))
|
||||
(setq high (or (if uidnext
|
||||
(1- uidnext)
|
||||
(nth 3 (car marks)))
|
||||
0)
|
||||
low (or (nth 4 (car marks)) uidnext 1)))))
|
||||
(with-current-buffer nntp-server-buffer
|
||||
(erase-buffer)
|
||||
(insert
|
||||
(format
|
||||
"211 %d %d %d %S\n" (1+ (- high low)) low high group))
|
||||
t)))
|
||||
(when (nnimap-change-group nil server)
|
||||
(let (marks high low)
|
||||
(with-current-buffer (nnimap-buffer)
|
||||
(erase-buffer)
|
||||
(let ((group-sequence
|
||||
(nnimap-send-command "SELECT %S" (utf7-encode group t)))
|
||||
(flag-sequence
|
||||
(nnimap-send-command "UID FETCH 1:* FLAGS")))
|
||||
(setf (nnimap-group nnimap-object) group)
|
||||
(nnimap-wait-for-response flag-sequence)
|
||||
(setq marks
|
||||
(nnimap-flags-to-marks
|
||||
(nnimap-parse-flags
|
||||
(list (list group-sequence flag-sequence
|
||||
1 group "SELECT")))))
|
||||
(when (and info
|
||||
marks)
|
||||
(nnimap-update-infos marks (list info))
|
||||
(nnimap-store-info info (gnus-active (gnus-info-group info))))
|
||||
(goto-char (point-max))
|
||||
(let ((uidnext (nth 5 (car marks))))
|
||||
(setq high (or (if uidnext
|
||||
(1- uidnext)
|
||||
(nth 3 (car marks)))
|
||||
0)
|
||||
low (or (nth 4 (car marks)) uidnext 1)))))
|
||||
(with-current-buffer nntp-server-buffer
|
||||
(erase-buffer)
|
||||
(insert
|
||||
(format
|
||||
"211 %d %d %d %S\n" (1+ (- high low)) low high group))
|
||||
t))))
|
||||
|
||||
(deffoo nnimap-request-create-group (group &optional server args)
|
||||
(setq group (nnimap-decode-gnus-group group))
|
||||
|
Loading…
x
Reference in New Issue
Block a user