X-Git-Url: https://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fnntp.el;h=4d6a408362d50816b5448f910dc4d4709de67964;hb=b19ab0bcf7b463d4b14b41bd23f2a5d62d03795a;hp=d54b4a406dc421b68d807acf26c54ff26badc156;hpb=1a96d7bf660263f25557962103bc0ec2495d1d07;p=gnus diff --git a/lisp/nntp.el b/lisp/nntp.el index d54b4a406..4d6a40836 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -243,7 +243,7 @@ server there that you can connect to. See also `nntp-open-connection-function'") "Retrieve group info on GROUPS." (nntp-possibly-change-group nil server) (save-excursion - (set-buffer nntp-server-buffer) + (set-buffer (nntp-find-connection-buffer nntp-server-buffer)) ;; The first time this is run, this variable is `try'. So we ;; try. (when (eq nntp-server-list-active-group 'try) @@ -295,12 +295,12 @@ server there that you can connect to. See also `nntp-open-connection-function'") (while (re-search-forward "^[.2-5]" nil t) (delete-region (match-beginning 0) (progn (forward-line 1) (point)))) + (copy-to-buffer nntp-server-buffer (point-min) (point-max)) 'active)))) - (defun nntp-try-list-active (group) +(defun nntp-try-list-active (group) (nntp-list-active-group group) (save-excursion - (set-buffer nntp-server-buffer) (goto-char (point-min)) (cond ((looking-at "5[0-9]+") (setq nntp-server-list-active-group nil)) @@ -317,7 +317,8 @@ server there that you can connect to. See also `nntp-open-connection-function'") (when (nntp-send-command-and-decode "\r?\n\\.\r?\n" "ARTICLE" (if (numberp article) (int-to-string article) article)) - (when buffer + (when (and buffer + (not (equal buffer nntp-server-buffer))) (save-excursion (set-buffer nntp-server-buffer) (copy-to-buffer buffer (point-min) (point-max))