--- lisp/gnus/gnus-group.el~ 2017-01-04 22:16:44.000000000 +0000 +++ lisp/gnus/gnus-group.el 2017-03-01 05:06:46.565658800 +0000 @@ -2464,14 +2464,33 @@ (file-exists-p file)) (insert-file-contents file) (url-insert-file-contents (format mbox-url id))))) - (goto-char (point-min)) ;; Add the debbugs address so that we can respond to reports easily. - (while (re-search-forward "^To: " nil t) - (end-of-line) - (insert (format ", %s@%s" (car ids) - (replace-regexp-in-string - "/.*$" "" - (replace-regexp-in-string "^http://" "" mbox-url))))))) + (let ((address + (format "%s@%s" (car ids) + (replace-regexp-in-string + "/.*$" "" + (replace-regexp-in-string "^http://" "" mbox-url))))) + (goto-char (point-min)) + (while (re-search-forward (concat "^" message-unix-mail-delimiter) + nil t) + (narrow-to-region (point) + (if (search-forward "\n\n" nil t) + (1- (point)) + (point-max))) + (unless (string-match (concat "\\(?:\\`\\|[ ,<]\\)" + (regexp-quote address) + "\\(?:\\'\\|[ ,>]\\)") + (concat (message-fetch-field "to") " " + (message-fetch-field "cc"))) + (goto-char (point-min)) + (if (re-search-forward "^To:" nil t) + (progn + (message-next-header) + (skip-chars-backward "\t\n ") + (insert ", " address)) + (insert "To: " address "\n"))) + (goto-char (point-max)) + (widen))))) (gnus-group-read-ephemeral-group (format "nndoc+ephemeral:bug#%s" (mapconcat 'number-to-string ids ","))