Commit 549c9aed authored by Gnus developers's avatar Gnus developers Committed by Katsumi Yamaoka
Browse files

Merge changes made in Gnus trunk.

nnimap.el (nnimap-wait-for-response): Always look (at least) at the previous line.
nnimap.el (nnimap-quirk): New function.
 (nnimap-retrieve-group-data-early): Use it.
 (nnimap-quirks): New alist.
gnus.texi (Foreign Groups): Added clarification of foreign groups.
gnus-sum.el (gnus-summary-push-marks-to-backend): Fix the logic for copying read-ness to the backends.
gnus-group.el (gnus-group-kill-group): Notify the backend that the group has been killed.
 (gnus-group-yank-group): Ditto.
gnus-start.el (gnus-subscribe-newsgroup): Notify the backend.
nnir.el: Improve customizations.
gnus.texi (Archived Messages): Removed outdated comment and text.
nnfolder.el (nnfolder-save-all-buffers): Refactor out into its own function.
 (nnfolder-request-expire-articles): Save all the buffers after doing expiry.
nnmail.el (nnmail-expiry-target-group): Revert the "all articles are the last article", since that led to serious performance regressions when expiring nnml groups.
gnus-html.el (gnus-html-schedule-image-fetching): Make sure the HTML fetching stops when Gnus exits.
gnus-srvr.el: Avoid passing nil regexp argument to delete-matching-lines.
auth-source.el (auth-source-gpg-encrypt-to): New variable to set the list of recipient keys, or use symmetric encryption if not a list.
 (auth-source-create): Use it to make `epa-file-encrypt-to' local for an EPA override, replacing the call to `netrc-store-data'.
parent aa936e8e
2010-12-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus.texi (Archived Messages): Remove outdated text.
2010-12-16 Teodor Zlatanov <tzz@lifelogs.com>
* gnus.texi (Foreign Groups): Added clarification of foreign groups.
2010-12-15 Andrew Cohen <cohen@andy.bu.edu> 2010-12-15 Andrew Cohen <cohen@andy.bu.edu>
* gnus.texi (The hyrex Engine): Say that this engine as obsolete. * gnus.texi (The hyrex Engine): Say that this engine as obsolete.
......
...@@ -2512,6 +2512,15 @@ the command to be executed. ...@@ -2512,6 +2512,15 @@ the command to be executed.
@section Foreign Groups @section Foreign Groups
@cindex foreign groups @cindex foreign groups
If you recall how to subscribe to servers (@pxref{Finding the News})
you will remember that @code{gnus-secondary-select-methods} and
@code{gnus-select-method} let you write a definition in Emacs Lisp of
what servers you want to see when you start up. The alternate
approach is to use foreign servers and groups. ``Foreign'' here means
they are not coming from the select methods. All foreign server
configuration and subscriptions are stored only in the
@file{~/.newsrc.eld} file.
Below are some group mode commands for making and editing general foreign Below are some group mode commands for making and editing general foreign
groups, as well as commands to ease the creation of a few groups, as well as commands to ease the creation of a few
special-purpose groups. All these commands insert the newly created special-purpose groups. All these commands insert the newly created
...@@ -12611,9 +12620,6 @@ messages in one file per month: ...@@ -12611,9 +12620,6 @@ messages in one file per month:
(concat "mail." (format-time-string "%Y-%m"))))) (concat "mail." (format-time-string "%Y-%m")))))
@end lisp @end lisp
@c (XEmacs 19.13 doesn't have @code{format-time-string}, so you'll have to
@c use a different value for @code{gnus-message-archive-group} there.)
Now, when you send a message off, it will be stored in the appropriate Now, when you send a message off, it will be stored in the appropriate
group. (If you want to disable storing for just one particular message, group. (If you want to disable storing for just one particular message,
you can just remove the @code{Gcc} header that has been inserted.) The you can just remove the @code{Gcc} header that has been inserted.) The
...@@ -12625,11 +12631,6 @@ if (using @kbd{G r} in the group buffer) to something ...@@ -12625,11 +12631,6 @@ if (using @kbd{G r} in the group buffer) to something
nice---@samp{misc-mail-september-1995}, or whatever. New messages will nice---@samp{misc-mail-september-1995}, or whatever. New messages will
continue to be stored in the old (now empty) group. continue to be stored in the old (now empty) group.
That's the default method of archiving sent messages. Gnus offers a
different way for the people who don't like the default method. In that
case you should set @code{gnus-message-archive-group} to @code{nil};
this will disable archiving.
@table @code @table @code
@item gnus-gcc-mark-as-read @item gnus-gcc-mark-as-read
@vindex gnus-gcc-mark-as-read @vindex gnus-gcc-mark-as-read
2010-12-16 Daiki Ueno <ueno@unixuser.org>
* auth-source.el (auth-source-gpg-encrypt-to): New variable to set the
list of recipient keys, or use symmetric encryption if not a list.
(auth-source-create): Use it to make `epa-file-encrypt-to' local for an
EPA override, replacing the call to `netrc-store-data'.
2010-12-16 Dan Davison <dandavison7@gmail.com> (tiny change)
* gnus-srvr.el: Avoid passing nil regexp argument to
delete-matching-lines.
2010-12-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-html.el (gnus-html-schedule-image-fetching): Make sure the HTML
fetching stops when Gnus exits.
* nnfolder.el (nnfolder-save-all-buffers): Refactor out into its own
function.
(nnfolder-request-expire-articles): Save all the buffers after doing
expiry.
* nnmail.el (nnmail-expiry-target-group): Revert the "all articles are
the last article", since that led to serious performance regressions
when expiring nnml groups.
2010-12-16 Andrew Cohen <cohen@andy.bu.edu>
* nnir.el: Improve customizations.
2010-12-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-start.el (gnus-subscribe-newsgroup): Notify the backend.
* gnus-group.el (gnus-group-kill-group): Notify the backend that the
group has been killed.
(gnus-group-yank-group): Ditto.
* gnus-srvr.el (gnus-browse-unsubscribe-group): Ditto.
* nnimap.el (nnimap-request-update-group-status): New function.
* gnus-int.el (gnus-request-update-group-status): New interface
function.
* gnus-sum.el (gnus-summary-push-marks-to-backend): Fix the logic for
copying read-ness to the backends.
* nnimap.el (nnimap-quirk): New function.
(nnimap-retrieve-group-data-early): Use it.
(nnimap-quirks): New alist.
2010-12-16 Katsumi Yamaoka <yamaoka@jpl.org> 2010-12-16 Katsumi Yamaoka <yamaoka@jpl.org>
* shr.el (shr-insert): Set shr-start after deleting trailing space; * shr.el (shr-insert): Set shr-start after deleting trailing space;
don't delete it within indentation. don't delete it within indentation.
2010-12-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-wait-for-response): Always look (at least) at the
previous line.
2010-12-15 Lars Magne Ingebrigtsen <larsi@gnus.org> 2010-12-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
* nnimap.el (nnimap-retrieve-group-data-early): Fix the syntax of the * nnimap.el (nnimap-retrieve-group-data-early): Fix the syntax of the
......
...@@ -159,6 +159,15 @@ can get pretty complex." ...@@ -159,6 +159,15 @@ can get pretty complex."
(const :tag "Any" t) (const :tag "Any" t)
(string :tag "Specific user name")))))))) (string :tag "Specific user name"))))))))
(defcustom auth-source-gpg-encrypt-to t
"List of recipient keys that `authinfo.gpg' encrypted to.
If the value is not a list, symmetric encryption will be used."
:group 'auth-source
:version "23.2" ;; No Gnus
:type '(choice (const :tag "Symmetric encryption" t)
(repeat :tag "Recipient public keys"
(string :tag "Recipient public key"))))
;; temp for debugging ;; temp for debugging
;; (unintern 'auth-source-protocols) ;; (unintern 'auth-source-protocols)
;; (unintern 'auth-sources) ;; (unintern 'auth-sources)
...@@ -352,9 +361,28 @@ Return structure as specified by MODE." ...@@ -352,9 +361,28 @@ Return structure as specified by MODE."
;; netrc interface. ;; netrc interface.
(when (y-or-n-p (format "Do you want to save this password in %s? " (when (y-or-n-p (format "Do you want to save this password in %s? "
source)) source))
(netrc-store-data source host prot ;; the code below is almost same as `netrc-store-data' except
(or user (cdr (assoc "login" result))) ;; the `epa-file-encrypt-to' hack (see bug#7487).
(cdr (assoc "password" result)))))) (with-temp-buffer
(when (file-exists-p source)
(insert-file-contents source))
(when auth-source-gpg-encrypt-to
;; making `epa-file-encrypt-to' local to this buffer lets
;; epa-file skip the key selection query (see the
;; `local-variable-p' check in `epa-file-write-region').
(unless (local-variable-p 'epa-file-encrypt-to)
(make-local-variable 'epa-file-encrypt-to))
(if (listp auth-source-gpg-encrypt-to)
(setq epa-file-encrypt-to auth-source-gpg-encrypt-to)))
(goto-char (point-max))
(unless (bolp)
(insert "\n"))
(insert (format "machine %s login %s password %s port %s\n"
host
(or user (cdr (assoc "login" result)))
(cdr (assoc "password" result))
prot))
(write-region (point-min) (point-max) source nil 'silent)))))
(if (consp mode) (if (consp mode)
(mapcar #'cdr result) (mapcar #'cdr result)
(cdar result)))) (cdar result))))
......
...@@ -3781,6 +3781,7 @@ of groups killed." ...@@ -3781,6 +3781,7 @@ of groups killed."
gnus-list-of-killed-groups)) gnus-list-of-killed-groups))
(gnus-group-change-level (gnus-group-change-level
(if entry entry group) gnus-level-killed (if entry nil level)) (if entry entry group) gnus-level-killed (if entry nil level))
(gnus-request-update-group-status group 'unsubscribe)
(message "Killed group %s" (gnus-group-decoded-name group))) (message "Killed group %s" (gnus-group-decoded-name group)))
;; If there are lots and lots of groups to be killed, we use ;; If there are lots and lots of groups to be killed, we use
;; this thing instead. ;; this thing instead.
...@@ -3803,7 +3804,8 @@ of groups killed." ...@@ -3803,7 +3804,8 @@ of groups killed."
(setq gnus-zombie-list (delete group gnus-zombie-list)))) (setq gnus-zombie-list (delete group gnus-zombie-list))))
;; There may be more than one instance displayed. ;; There may be more than one instance displayed.
(while (gnus-group-goto-group group) (while (gnus-group-goto-group group)
(gnus-delete-line))) (gnus-delete-line))
(gnus-request-update-group-status group 'unsubscribe))
(gnus-make-hashtable-from-newsrc-alist)) (gnus-make-hashtable-from-newsrc-alist))
(gnus-group-position-point) (gnus-group-position-point)
...@@ -3831,6 +3833,7 @@ yanked) a list of yanked groups is returned." ...@@ -3831,6 +3833,7 @@ yanked) a list of yanked groups is returned."
(and prev (gnus-group-entry prev)) (and prev (gnus-group-entry prev))
t) t)
(gnus-group-insert-group-line-info group) (gnus-group-insert-group-line-info group)
(gnus-request-update-group-status group 'subscribe)
(gnus-undo-register (gnus-undo-register
`(when (gnus-group-goto-group ,group) `(when (gnus-group-goto-group ,group)
(gnus-group-kill-group 1)))) (gnus-group-kill-group 1))))
......
...@@ -395,7 +395,7 @@ Use ALT-TEXT for the image string." ...@@ -395,7 +395,7 @@ Use ALT-TEXT for the image string."
4) 4)
(setq args (nconc args (list t)))) (setq args (nconc args (list t))))
(ignore-errors (ignore-errors
(apply #'url-retrieve args)))) (push (apply #'url-retrieve args) gnus-buffers))))
(defun gnus-html-image-fetched (status buffer image) (defun gnus-html-image-fetched (status buffer image)
"Callback function called when image has been fetched." "Callback function called when image has been fetched."
......
...@@ -473,6 +473,18 @@ If FETCH-OLD, retrieve all headers (or some subset thereof) in the group." ...@@ -473,6 +473,18 @@ If FETCH-OLD, retrieve all headers (or some subset thereof) in the group."
(funcall (gnus-get-function gnus-command-method 'request-type) (funcall (gnus-get-function gnus-command-method 'request-type)
(gnus-group-real-name group) article)))) (gnus-group-real-name group) article))))
(defun gnus-request-update-group-status (group status)
"Change the status of a group.
Valid statuses include `subscribe' and `unsubscribe'."
(let ((gnus-command-method (gnus-find-method-for-group group)))
(if (not (gnus-check-backend-function
'request-update-group-status (car gnus-command-method)))
nil
(funcall
(gnus-get-function gnus-command-method 'request-update-group-status)
(gnus-group-real-name group) status
(nth 1 gnus-command-method)))))
(defun gnus-request-set-mark (group action) (defun gnus-request-set-mark (group action)
"Set marks on articles in the back end." "Set marks on articles in the back end."
(let ((gnus-command-method (gnus-find-method-for-group group))) (let ((gnus-command-method (gnus-find-method-for-group group)))
......
...@@ -766,7 +766,8 @@ claim them." ...@@ -766,7 +766,8 @@ claim them."
(with-current-buffer nntp-server-buffer (with-current-buffer nntp-server-buffer
(let ((cur (current-buffer))) (let ((cur (current-buffer)))
(goto-char (point-min)) (goto-char (point-min))
(unless (string= gnus-ignored-newsgroups "") (unless (or (null gnus-ignored-newsgroups)
(string= gnus-ignored-newsgroups ""))
(delete-matching-lines gnus-ignored-newsgroups)) (delete-matching-lines gnus-ignored-newsgroups))
;; We treat NNTP as a special case to avoid problems with ;; We treat NNTP as a special case to avoid problems with
;; garbage group names like `"foo' that appear in some badly ;; garbage group names like `"foo' that appear in some badly
...@@ -992,7 +993,8 @@ how new groups will be entered into the group buffer." ...@@ -992,7 +993,8 @@ how new groups will be entered into the group buffer."
;; mechanism for new group subscription. ;; mechanism for new group subscription.
(gnus-call-subscribe-functions (gnus-call-subscribe-functions
gnus-browse-subscribe-newsgroup-method gnus-browse-subscribe-newsgroup-method
group))) group)
(gnus-request-update-group-status group 'subscribe)))
(delete-char 1) (delete-char 1)
(insert (let ((lvl (gnus-group-level group))) (insert (let ((lvl (gnus-group-level group)))
(cond (cond
......
...@@ -645,6 +645,7 @@ the first newsgroup." ...@@ -645,6 +645,7 @@ the first newsgroup."
(gnus-group-change-level (gnus-group-change-level
newsgroup gnus-level-default-subscribed newsgroup gnus-level-default-subscribed
gnus-level-killed (gnus-group-entry (or next "dummy.group"))) gnus-level-killed (gnus-group-entry (or next "dummy.group")))
(gnus-request-update-group-status newsgroup 'subscribe)
(gnus-message 5 "Subscribe newsgroup: %s" newsgroup) (gnus-message 5 "Subscribe newsgroup: %s" newsgroup)
(run-hook-with-args 'gnus-subscribe-newsgroup-hooks newsgroup) (run-hook-with-args 'gnus-subscribe-newsgroup-hooks newsgroup)
t)) t))
......
...@@ -9958,7 +9958,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." ...@@ -9958,7 +9958,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'."
(defun gnus-summary-push-marks-to-backend (article) (defun gnus-summary-push-marks-to-backend (article)
(let ((set nil) (let ((set nil)
(marks gnus-article-mark-lists)) (marks gnus-article-mark-lists))
(when (memq article gnus-newsgroup-unreads) (unless (memq article gnus-newsgroup-unreads)
(push 'read set)) (push 'read set))
(while marks (while marks
(when (and (eq (gnus-article-mark-to-type (cdar marks)) 'list) (when (and (eq (gnus-article-mark-to-type (cdar marks)) 'list)
......
...@@ -322,20 +322,20 @@ the group. Then the marks file will be regenerated properly by Gnus.") ...@@ -322,20 +322,20 @@ the group. Then the marks file will be regenerated properly by Gnus.")
(when nnfolder-get-new-mail (when nnfolder-get-new-mail
(nnfolder-possibly-change-group group server) (nnfolder-possibly-change-group group server)
(nnmail-get-new-mail (nnmail-get-new-mail
'nnfolder 'nnfolder 'nnfolder-save-all-buffers
(lambda () nnfolder-directory group)))
(let ((bufs nnfolder-buffer-alist))
(save-excursion (defun nnfolder-save-all-buffers ()
(while bufs (let ((bufs nnfolder-buffer-alist))
(if (not (gnus-buffer-live-p (nth 1 (car bufs)))) (save-excursion
(setq nnfolder-buffer-alist (while bufs
(delq (car bufs) nnfolder-buffer-alist)) (if (not (gnus-buffer-live-p (nth 1 (car bufs))))
(set-buffer (nth 1 (car bufs))) (setq nnfolder-buffer-alist
(nnfolder-save-buffer) (delq (car bufs) nnfolder-buffer-alist))
(kill-buffer (current-buffer))) (set-buffer (nth 1 (car bufs)))
(setq bufs (cdr bufs)))))) (nnfolder-save-buffer)
nnfolder-directory (kill-buffer (current-buffer)))
group))) (setq bufs (cdr bufs))))))
;; Don't close the buffer if we're not shutting down the server. This way, ;; Don't close the buffer if we're not shutting down the server. This way,
;; we can keep the buffer in the group buffer cache, and not have to grovel ;; we can keep the buffer in the group buffer cache, and not have to grovel
...@@ -488,7 +488,8 @@ the group. Then the marks file will be regenerated properly by Gnus.") ...@@ -488,7 +488,8 @@ the group. Then the marks file will be regenerated properly by Gnus.")
(nnfolder-save-buffer) (nnfolder-save-buffer)
(nnfolder-adjust-min-active newsgroup) (nnfolder-adjust-min-active newsgroup)
(nnfolder-save-active nnfolder-group-alist nnfolder-active-file) (nnfolder-save-active nnfolder-group-alist nnfolder-active-file)
(gnus-sorted-difference articles (nreverse deleted-articles))))) (gnus-sorted-difference articles (nreverse deleted-articles)))
(nnfolder-save-all-buffers)))
(deffoo nnfolder-request-move-article (article group server accept-form (deffoo nnfolder-request-move-article (article group server accept-form
&optional last move-is-internal) &optional last move-is-internal)
......
...@@ -139,6 +139,9 @@ textual parts.") ...@@ -139,6 +139,9 @@ textual parts.")
(download "gnus-download") (download "gnus-download")
(forward "gnus-forward"))) (forward "gnus-forward")))
(defvar nnimap-quirks
'(("QRESYNC" "Zimbra" "QRESYNC ")))
(defun nnimap-buffer () (defun nnimap-buffer ()
(nnimap-find-process-buffer nntp-server-buffer)) (nnimap-find-process-buffer nntp-server-buffer))
...@@ -897,6 +900,16 @@ textual parts.") ...@@ -897,6 +900,16 @@ textual parts.")
(push flag flags))) (push flag flags)))
flags)) flags))
(deffoo nnimap-request-update-group-status (group status &optional server)
(when (nnimap-possibly-change-group nil server)
(let ((command (assoc
status
'((subscribe "SUBSCRIBE")
(unsubscribe "UNSUBSCRIBE")))))
(when command
(with-current-buffer (nnimap-buffer)
(nnimap-command "%s %S" (cadr command) (utf7-encode group t)))))))
(deffoo nnimap-request-set-mark (group actions &optional server) (deffoo nnimap-request-set-mark (group actions &optional server)
(when (nnimap-possibly-change-group group server) (when (nnimap-possibly-change-group group server)
(let (sequence) (let (sequence)
...@@ -1080,8 +1093,9 @@ textual parts.") ...@@ -1080,8 +1093,9 @@ textual parts.")
uidvalidity uidvalidity
modseq) modseq)
(push (push
(list (nnimap-send-command "EXAMINE %S (QRESYNC (%s %s))" (list (nnimap-send-command "EXAMINE %S (%s (%s %s))"
(utf7-encode group t) (utf7-encode group t)
(nnimap-quirk "QRESYNC")
uidvalidity modseq) uidvalidity modseq)
'qresync 'qresync
nil group 'qresync) nil group 'qresync)
...@@ -1107,6 +1121,15 @@ textual parts.") ...@@ -1107,6 +1121,15 @@ textual parts.")
sequences)))) sequences))))
sequences)))) sequences))))
(defun nnimap-quirk (command)
(let ((quirk (assoc command nnimap-quirks)))
;; If this server is of a type that matches a quirk, then return
;; the "quirked" command instead of the proper one.
(if (or (null quirk)
(not (string-match (nth 1 quirk) (nnimap-greeting nnimap-object))))
command
(nth 2 quirk))))
(deffoo nnimap-finish-retrieve-group-infos (server infos sequences) (deffoo nnimap-finish-retrieve-group-infos (server infos sequences)
(when (and sequences (when (and sequences
(nnimap-possibly-change-group nil server)) (nnimap-possibly-change-group nil server))
...@@ -1541,7 +1564,11 @@ textual parts.") ...@@ -1541,7 +1564,11 @@ textual parts.")
(not (re-search-backward (not (re-search-backward
(format "^%d .*\n" sequence) (format "^%d .*\n" sequence)
(if nnimap-streaming (if nnimap-streaming
(max (point-min) (- (point) 500)) (max (point-min)
(- (point) 500)
(save-excursion
(forward-line -1)
(point)))
(point-min)) (point-min))
t))) t)))
(when messagep (when messagep
......
...@@ -305,13 +305,6 @@ is `(valuefunc member)'." ...@@ -305,13 +305,6 @@ is `(valuefunc member)'."
"Search groups in Gnus with assorted seach engines." "Search groups in Gnus with assorted seach engines."
:group 'gnus) :group 'gnus)
(defcustom nnir-method-default-engines
'((nnimap . imap)
(nntp . gmane))
"*Alist of default search engines keyed by server method."
:type '(alist)
:group 'nnir)
(defcustom nnir-ignored-newsgroups "" (defcustom nnir-ignored-newsgroups ""
"*A regexp to match newsgroups in the active file that should "*A regexp to match newsgroups in the active file that should
be skipped when searching." be skipped when searching."
...@@ -329,7 +322,7 @@ with three items unique to nnir summary buffers: ...@@ -329,7 +322,7 @@ with three items unique to nnir summary buffers:
%g Article original short group name (string) %g Article original short group name (string)
If nil this will use `gnus-summary-line-format'." If nil this will use `gnus-summary-line-format'."
:type '(regexp) :type '(string)
:group 'nnir) :group 'nnir)
(defcustom nnir-retrieve-headers-override-function nil (defcustom nnir-retrieve-headers-override-function nil
...@@ -347,7 +340,8 @@ result, `gnus-retrieve-headers' will be called instead." ...@@ -347,7 +340,8 @@ result, `gnus-retrieve-headers' will be called instead."
"*The default IMAP search key for an nnir search. Must be one of "*The default IMAP search key for an nnir search. Must be one of
the keys in `nnir-imap-search-arguments'. To use raw imap queries the keys in `nnir-imap-search-arguments'. To use raw imap queries
by default set this to \"Imap\"." by default set this to \"Imap\"."
:type '(string) :type `(choice ,@(mapcar (lambda (elem) (list 'const (car elem)))
nnir-imap-search-arguments))
:group 'nnir) :group 'nnir)
(defcustom nnir-swish++-configuration-file (defcustom nnir-swish++-configuration-file
...@@ -546,6 +540,18 @@ needs the variables `nnir-namazu-program', ...@@ -546,6 +540,18 @@ needs the variables `nnir-namazu-program',
Add an entry here when adding a new search engine.") Add an entry here when adding a new search engine.")
(defcustom nnir-method-default-engines
'((nnimap . imap)
(nntp . gmane))
"*Alist of default search engines keyed by server method."
:type `(repeat (cons (choice (const nnimap) (const nttp) (const nnspool)
(const nneething) (const nndir) (const nnmbox)
(const nnml) (const nnmh) (const nndraft)
(const nnfolder) (const nnmaildir))
(choice
,@(mapcar (lambda (elem) (list 'const (car elem)))
nnir-engines))))
:group 'nnir)
;; Gnus glue. ;; Gnus glue.
......
...@@ -1915,7 +1915,7 @@ If TIME is nil, then return the cutoff time for oldness instead." ...@@ -1915,7 +1915,7 @@ If TIME is nil, then return the cutoff time for oldness instead."
(unless (eq target 'delete) (unless (eq target 'delete)
(when (or (gnus-request-group target) (when (or (gnus-request-group target)
(gnus-request-create-group target)) (gnus-request-create-group target))
(let ((group-art (gnus-request-accept-article target nil t t))) (let ((group-art (gnus-request-accept-article target nil nil t)))
(when (and (consp group-art) (when (and (consp group-art)
(cdr group-art)) (cdr group-art))
(gnus-group-mark-article-read target (cdr group-art)))))))) (gnus-group-mark-article-read target (cdr group-art))))))))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment