On Mon, Nov 19, 2012 at 11:58:38PM +0100, Krzysztof Mazur wrote:
> On Mon, Nov 19, 2012 at 11:27:45AM -0800, Junio C Hamano wrote:
> > Given that the problematic line
> > 
> >     Stable Kernel Maintainance Track <sta...@vger.kernel.org> # vX.Y
> > 
> > is not even a valid e-mail address, doesn't this new logic belong to
> > sanitize_address() conceptually?
> 
> Yes, it's much better to do it in the sanitize_address().
> 
> Felipe, may you check it?
> 
> Krzysiek
> -- >8 --
> Subject: [PATCH] git-send-email: remove garbage after email address
> 
> In some cases it's very useful to add some additional information
> after email in Cc-list, for instance:
> 
> "Cc: Stable kernel <sta...@vger.kernel.org> #v3.4 v3.5 v3.6"
> 
> Currently the git refuses to add such invalid email to Cc-list,
> when the Email::Valid perl module is available or just uses whole line
> as the email address.
> 
> Now in sanitize_address() everything after the email address is
> removed, so the resulting line is correct email address and Email::Valid
> validates it correctly.
> 
> Signed-off-by: Krzysztof Mazur <krzys...@podlesie.net>

Tested-by: Felipe Balbi <ba...@ti.com>

> ---
>  git-send-email.perl | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/git-send-email.perl b/git-send-email.perl
> index 5a7c29d..9840d0a 100755
> --- a/git-send-email.perl
> +++ b/git-send-email.perl
> @@ -924,6 +924,10 @@ sub quote_subject {
>  # use the simplest quoting being able to handle the recipient
>  sub sanitize_address {
>       my ($recipient) = @_;
> +
> +     # remove garbage after email address
> +     $recipient =~ s/(.*>).*$/$1/;
> +
>       my ($recipient_name, $recipient_addr) = ($recipient =~ 
> /^(.*?)\s*(<.*)/);
>  
>       if (not $recipient_name) {
> -- 
> 1.8.0.283.gc57d856
> 

-- 
balbi

Attachment: signature.asc
Description: Digital signature

Reply via email to