Skip to content

Commit

Permalink
Check and document the options to prevent mistakes.
Browse files Browse the repository at this point in the history
When multiple recipients are given to git-send-email on the same
--cc line the code does not properly handle it.

Full and proper parsing of the email addresses so I can detect
which commas mean a new email address is more than I care to implement.

In particular this email address: "bibo,mao" <bibo.mao@intel.com>
must not be treated as two email addresses.

So this patch simply treats all commas in recipient lists as
an error and fails if one is given.

At the same time it documents that git-send-email wants multiple
instances of --cc specified on the command line if you want to
cc multiple recipients.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
ebiederm authored and Junio C Hamano committed Jun 22, 2006
1 parent c1f8064 commit 79ee555
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
9 changes: 9 additions & 0 deletions Documentation/git-send-email.txt
Expand Up @@ -24,9 +24,16 @@ OPTIONS
-------
The options available are:

--bcc::
Specify a "Bcc:" value for each email.

The --bcc option must be repeated for each user you want on the bcc list.

--cc::
Specify a starting "Cc:" value for each email.

The --cc option must be repeated for each user you want on the cc list.

--chain-reply-to, --no-chain-reply-to::
If this is set, each email will be sent as a reply to the previous
email sent. If disabled with "--no-chain-reply-to", all emails after
Expand Down Expand Up @@ -76,6 +83,8 @@ The options available are:
Generally, this will be the upstream maintainer of the
project involved.

The --to option must be repeated for each user you want on the to list.


Author
------
Expand Down
14 changes: 14 additions & 0 deletions git-send-email.perl
Expand Up @@ -65,6 +65,20 @@
"no-signed-off-cc|no-signed-off-by-cc" => \$no_signed_off_cc,
);

# Verify the user input

foreach my $entry (@to) {
die "Comma in --to entry: $entry'\n" unless $entry !~ m/,/;
}

foreach my $entry (@initial_cc) {
die "Comma in --cc entry: $entry'\n" unless $entry !~ m/,/;
}

foreach my $entry (@bcclist) {
die "Comma in --bcclist entry: $entry'\n" unless $entry !~ m/,/;
}

# Now, let's fill any that aren't set in with defaults:

sub gitvar {
Expand Down

0 comments on commit 79ee555

Please sign in to comment.