+2002-10-06 Simon Josefsson <jas@extundo.com>
+
+ * imap.el (imap-parse-status): Don't use read to read token.
+
+2002-10-05 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+
+ * gnus-agent.el (gnus-agent-fetch-selected-article): Do nothing
+ for methods not covered by the agent, and when unplugged.
+
2002-10-05 Simon Josefsson <jas@extundo.com>
+ * pgg-gpg.el (pgg-gpg-encrypt-region): Query passphrase when
+ signing.
+
* gnus-agent.el (gnus-agent-read-servers): If getting method from
a named server fails, ignore the server.
This can be added to `gnus-select-article-hook' or
`gnus-mark-article-hook'."
(let ((gnus-command-method gnus-current-select-method))
- (gnus-agent-fetch-articles
- gnus-newsgroup-name
- (list gnus-current-article))))
+ (when (and gnus-plugged (gnus-agent-method-p gnus-command-method))
+ (gnus-agent-fetch-articles
+ gnus-newsgroup-name
+ (list gnus-current-article)))))
;;;
;;; Internal functions
(defun imap-parse-status ()
(let ((mailbox (imap-parse-mailbox)))
- (when (and mailbox (search-forward "(" nil t))
- (while (not (eq (char-after) ?\)))
- (let ((token (read (current-buffer))))
- (cond ((eq token 'MESSAGES)
+ (if (eq (char-after) ? )
+ (forward-char))
+ (when (and mailbox (eq (char-after) ?\())
+ (while (and (not (eq (char-after) ?\)))
+ (or (forward-char) t)
+ (looking-at "\\([A-Za-z]+\\) "))
+ (let ((token (match-string 1)))
+ (goto-char (match-end 0))
+ (cond ((string= token "MESSAGES")
(imap-mailbox-put 'messages (read (current-buffer)) mailbox))
- ((eq token 'RECENT)
+ ((string= token "RECENT")
(imap-mailbox-put 'recent (read (current-buffer)) mailbox))
- ((eq token 'UIDNEXT)
- (and (looking-at " \\([0-9]+\\)")
- (imap-mailbox-put 'uidnext (match-string 1) mailbox)
- (goto-char (match-end 1))))
- ((eq token 'UIDVALIDITY)
- (and (looking-at " \\([0-9]+\\)")
- (imap-mailbox-put 'uidvalidity (match-string 1) mailbox)
- (goto-char (match-end 1))))
- ((eq token 'UNSEEN)
+ ((string= token "UIDNEXT")
+ (and (looking-at "[0-9]+")
+ (imap-mailbox-put 'uidnext (match-string 0) mailbox)
+ (goto-char (match-end 0))))
+ ((string= token "UIDVALIDITY")
+ (and (looking-at "[0-9]+")
+ (imap-mailbox-put 'uidvalidity (match-string 0) mailbox)
+ (goto-char (match-end 0))))
+ ((string= token "UNSEEN")
(imap-mailbox-put 'unseen (read (current-buffer)) mailbox))
(t
(message "Unknown status data %s in mailbox %s ignored"
- token mailbox))))))))
+ token mailbox)
+ (read (current-buffer)))))))))
;; acl_data ::= "ACL" SPACE mailbox *(SPACE identifier SPACE
;; rights)