Subject: message-send-mail-function does not inherit from send-mail-function

From: Glenn Morris <[email-masked]>
Date: Wed, 24 Feb 2010 13:44:36 -0500

Current trunk on GNU/Linux:

emacs -Q --eval "(progn (setq send-mail-function 'smtpmail-send-it) (require 'message))"

C-h v message-send-mail-function RET

    Its value is 
    message-send-mail-with-sendmail

The fact that message-send-mail-function does not respect the value of
send-mail-function at all is unhelpful. It will be especially
confusing for people upgrading from Emacs 23.1 who have customized
send-mail-function.

I suggest a patch like the following:

*** lisp/gnus/message.el	2010-02-24 03:12:54 +0000
--- lisp/gnus/message.el	2010-02-24 18:41:04 +0000
***************
*** 675,681 ****
  	   (error "Don't know how to send mail.  Please customize `message-send-mail-function'")))))
  
  ;; Useful to set in site-init.el
! (defcustom message-send-mail-function (message-send-mail-function)
    "Function to call to send the current buffer as mail.
  The headers should be delimited by a line whose contents match the
  variable `mail-header-separator'.
--- 675,686 ----
  	   (error "Don't know how to send mail.  Please customize `message-send-mail-function'")))))
  
  ;; Useful to set in site-init.el
! (defcustom message-send-mail-function
!   (case send-mail-function
!     (smtpmail-send-it 'message-smtpmail-send-it)
!     (feedmail-send-it 'feedmail-send-it)
!     (mailclient-send-it 'message-send-mail-with-mailclient)
!     (t (message-send-mail-function)))
    "Function to call to send the current buffer as mail.
  The headers should be delimited by a line whose contents match the
  variable `mail-header-separator'.
***************
*** 698,704 ****
  			       :tag "Use Mailclient package")
   		(function :tag "Other"))
    :group 'message-sending
!   :version "23.1" ;; No Gnus
    :initialize 'custom-initialize-default
    :link '(custom-manual "(message)Mail Variables")
    :group 'message-mail)
--- 703,709 ----
  			       :tag "Use Mailclient package")
   		(function :tag "Other"))
    :group 'message-sending
!   :version "23.2"
    :initialize 'custom-initialize-default
    :link '(custom-manual "(message)Mail Variables")
    :group 'message-mail)