Re: [PATCH] send-email: quiet some warnings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eric Wong <normalperson@xxxxxxxx> writes:

> @@ -507,8 +507,16 @@ sub unique_email_list(@) {
>  	my @emails;
>  
>  	foreach my $entry (@_) {
> -		my $clean = extract_valid_address($entry);
> -		next if $seen{$clean}++;
> +		if (my $clean = extract_valid_address($entry)) {
> +			$seen{$clean} ||= 0;
> +			next if $seen{$clean}++;
> +		} else {
> +			# it could still be a local email address without '@',
> +			# which neither Email::Valid or our own small regex says
> +			# is valid...
> +			$seen{$entry} ||= 0;
> +			next if $seen{$entry}++;
> +		}

Wouldn't you want three kinds of return values from
sub extract_valid_address() if you want to do this?  That is, 

 (1) address is valid and this is the cleaned up value;
 (2) address is known to be bogus; do not use it.
 (3) address might be local.

And (1) and (3) are probably the same thing in practice.  In a
localsite setting, it is often convenient to be able to use
addr-spec that is local-part only, so something like the
attached change, with your error squelching for 'undef' return
in the second case, might be more appropriate.

-- >8 --

diff --git a/git-send-email.perl b/git-send-email.perl
index d8c4b1f..7a89e26 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -300,6 +300,9 @@ our ($message_id, $cc, %mail, $subject, 
 
 sub extract_valid_address {
 	my $address = shift;
+
+	return $address if ($address =~ /^(\w+)$/);
+
 	if ($have_email_valid) {
 		return Email::Valid->address($address);
 	} else {


-
: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]