From c691bdb4ab95c00e66ce9062780f3b70c4d33fbd Mon Sep 17 00:00:00 2001 From: yamaoka Date: Sun, 3 Sep 2000 22:22:32 +0000 Subject: [PATCH] Synch with Gnus. --- lisp/ChangeLog | 6 ++++++ lisp/gnus-sum.el | 2 ++ lisp/imap.el | 18 +++++++++--------- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6aa825b..4166317 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,11 @@ +2000-09-03 Simon Josefsson + + * gnus-sum.el (gnus-summary-delete-article): Check server. + 2000-09-01 Simon Josefsson + * imap.el (imap-parse-flag-list): Rewrite. + * nnimap.el (nnimap-retrieve-headers-from-file): Ignore errors. * imap.el (imap-parse-flag-list): Hack. diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 3d3f5e9..6dcfa1f 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -7907,6 +7907,8 @@ delete these instead." (unless (gnus-check-backend-function 'request-expire-articles gnus-newsgroup-name) (error "The current newsgroup does not support article deletion")) + (unless (gnus-check-server (gnus-find-method-for-group gnus-newsgroup-name)) + (error "Couldn't open server")) ;; Compute the list of articles to delete. (let ((articles (sort (copy-sequence (gnus-summary-work-articles n)) '<)) not-deleted) diff --git a/lisp/imap.el b/lisp/imap.el index da60d3f..5998a4a 100644 --- a/lisp/imap.el +++ b/lisp/imap.el @@ -2165,15 +2165,15 @@ Return nil if no complete line has arrived." ;; ; revisions of this specification. (defun imap-parse-flag-list () - (let ((str (buffer-substring (point) (search-forward ")" nil t))) - pos) - (while (setq pos (string-match "\\\\" str (and pos (+ 2 pos)))) - (setq str (replace-match "\\\\" nil t str))) - ;; xxx ugly. rewrite not to use `read' at all. - (when (= (length (symbol-name (read "A?A"))) 1) - (while (setq pos (string-match "\\?" str (and pos (+ 2 pos)))) - (setq str (replace-match "\\?" nil t str)))) - (mapcar 'symbol-name (read str)))) + (let (flag-list start) + (when (eq (char-after) ?\() + (imap-forward) + (while (and (not (eq (char-before) ?\))) + (setq start (point)) + (> (skip-chars-forward "^ )" (gnus-point-at-eol)) 0)) + (push (buffer-substring start (point)) flag-list) + (imap-forward)) + (nreverse flag-list)))) ;; envelope = "(" env-date SP env-subject SP env-from SP env-sender SP ;; env-reply-to SP env-to SP env-cc SP env-bcc SP -- 1.7.10.4