# HG changeset patch # User Julien Cristau # Date 2019-12-02 13:45:00 # Node ID 1d6c6ad645e1cfd16be473b376a9e18aaa7d06cd # Parent a85c123c625affc7551f9ba4c67762dfbd02e23d mail: don't complain about a multi-word email.method I want to be able to set email.method to "ssh relay /usr/sbin/sendmail" without needing an extra trivial shell script. This works fine since we pass the full command to a shell, except for validateconfig trying to find it in $PATH. Differential Revision: https://phab.mercurial-scm.org/D7542 diff --git a/mercurial/mail.py b/mercurial/mail.py --- a/mercurial/mail.py +++ b/mercurial/mail.py @@ -260,9 +260,11 @@ def validateconfig(ui): ) ) else: - if not procutil.findexe(method): + command = procutil.shellsplit(method) + command = command[0] if command else b'' + if not (command and procutil.findexe(command)): raise error.Abort( - _(b'%r specified as email transport, but not in PATH') % method + _(b'%r specified as email transport, but not in PATH') % command )