diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2018-04-15 19:28:04 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2018-04-15 19:28:04 +0200 |
commit | a3a9d5434d56f8736cc47e379a1d011d4c779b7c (patch) | |
tree | 78dd36c24dfe52d9b0fccc9cea35ab2f5e0c500e | |
parent | 60ec0c7960985bf6e849e2ea4c3888127f8e9bef (diff) | |
download | emacs-a3a9d5434d56f8736cc47e379a1d011d4c779b7c.tar.gz |
Revert "Make mail-extract-address-components return the user name more"
This reverts commit 8b50ae8b2284b5652c2843a9d0d076f4f657be28.
According to tests in bug#27656 by OGAWA Hirofumi, this patch
led to wrong results when binding
(dolist (addr '("Rasmus <rasmus@gmx.us>" "Rasmus <mbox@gmx.us>"))
(dolist (ignore-single '(t nil))
(dolist (ignore-same '(t nil))
(let ((mail-extr-ignore-single-names ignore-single)
(mail-extr-ignore-realname-equals-mailbox-name ignore-same))
(message "%s" (mail-extract-address-components addr))))))
in combination.
-rw-r--r-- | lisp/mail/mail-extr.el | 39 |
1 files changed, 19 insertions, 20 deletions
diff --git a/lisp/mail/mail-extr.el b/lisp/mail/mail-extr.el index 1e18c6d0553..3e8a41fb24c 100644 --- a/lisp/mail/mail-extr.el +++ b/lisp/mail/mail-extr.el @@ -1406,26 +1406,25 @@ consing a string.)" (insert (upcase mi) ". "))) ;; Nuke name if it is the same as mailbox name. - (when mail-extr-ignore-single-names - (let ((buffer-length (- (point-max) (point-min))) - (i 0) - (names-match-flag t)) - (when (and (> buffer-length 0) - (eq buffer-length (- mbox-end mbox-beg))) - (goto-char (point-max)) - (insert-buffer-substring canonicalization-buffer - mbox-beg mbox-end) - (while (and names-match-flag - (< i buffer-length)) - (or (eq (downcase (char-after (+ i (point-min)))) - (downcase - (char-after (+ i buffer-length (point-min))))) - (setq names-match-flag nil)) - (setq i (1+ i))) - (delete-region (+ (point-min) buffer-length) (point-max)) - (and names-match-flag - mail-extr-ignore-realname-equals-mailbox-name - (narrow-to-region (point) (point)))))) + (let ((buffer-length (- (point-max) (point-min))) + (i 0) + (names-match-flag t)) + (when (and (> buffer-length 0) + (eq buffer-length (- mbox-end mbox-beg))) + (goto-char (point-max)) + (insert-buffer-substring canonicalization-buffer + mbox-beg mbox-end) + (while (and names-match-flag + (< i buffer-length)) + (or (eq (downcase (char-after (+ i (point-min)))) + (downcase + (char-after (+ i buffer-length (point-min))))) + (setq names-match-flag nil)) + (setq i (1+ i))) + (delete-region (+ (point-min) buffer-length) (point-max)) + (and names-match-flag + mail-extr-ignore-realname-equals-mailbox-name + (narrow-to-region (point) (point))))) ;; Nuke name if it's just one word. (goto-char (point-min)) |