Fix message-replace-header after recent change

* lisp/gnus/message.el (message-replace-header): Restore else
branch removed by mistake in 989de3b824 (bug#49179).
This commit is contained in:
dickmao 2021-06-23 00:23:48 +02:00 committed by Lars Ingebrigtsen
parent 142962a8bd
commit 2540701f30
2 changed files with 34 additions and 5 deletions

View file

@ -8730,11 +8730,11 @@ headers. If FORCE, insert new field even if NEW-VALUE is empty."
(message-narrow-to-headers)
(message-remove-header header))
(when (or force (> (length new-value) 0))
(when after
(if (listp after)
(apply #'message-position-on-field
(append (list header) after))
(message-position-on-field header after))
(if after
(apply #'message-position-on-field header
(if (listp after)
after
(list after)))
(message-position-on-field header))
(insert new-value))))

View file

@ -154,6 +154,35 @@
"\"larsi@gnus.org\" <larsi@gnus.org>")
"larsi@gnus.org")))
(ert-deftest message-replace-header ()
(with-temp-buffer
(save-excursion
(insert "From: dang@gnus.org
To: user1,
user2
Cc: user3,
user4
--text follows this line--
Hello.
"))
(save-excursion
(message-replace-header "From" "ding@gnus.org")
(should (cl-search "ding" (message-field-value "From"))))
(save-excursion
(message-replace-header "From" "dong@gnus.org" "To")
(should (cl-search "dong" (message-field-value "From")))
(should (re-search-forward "From:"))
(should-error (re-search-forward "To:"))
(should (re-search-forward "Cc:")))
(save-excursion
(message-replace-header "From" "dang@gnus.org" (split-string "To Cc"))
(should (cl-search "dang" (message-field-value "From")))
(should (re-search-forward "From:"))
(should-error (re-search-forward "To:"))
;; That this isn't so is probably a bug from 1997.
;; (should-error (re-search-forward "Cc:"))
)))
(provide 'message-mode-tests)
;;; message-mode-tests.el ends here