aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Chiang <achiang@hp.com>2010-02-05 13:44:58 +0000
committerCatalin Marinas <catalin.marinas@gmail.com>2010-02-05 13:44:58 +0000
commite2a3c618b016f84b9e6fe44e77bb798b2b9c718f (patch)
tree07b2fd5557d118b396ed0f9ad230e2a759edf11e
parent97ccbbbc20680dec863149e78e44acecaa6d5314 (diff)
downloadstgit-e2a3c618b016f84b9e6fe44e77bb798b2b9c718f.tar.gz
stg mail: don't parse To/Cc/Bcc in --git mode
When using stg mail in --git mode, do not parse command-line To/Cc/Bcc addresses. Instead, we pass them directly to git send-email. This allows us to leverage git send-email's support for email aliases. Cc: Karl Wiberg <kha@treskal.com> Signed-off-by: Alex Chiang <achiang@hp.com> Signed-off-by: Catalin Marinas <catalin.marinas@gmail.com>
-rw-r--r--stgit/commands/mail.py14
1 files changed, 5 insertions, 9 deletions
diff --git a/stgit/commands/mail.py b/stgit/commands/mail.py
index 13329d0..6ac05d5 100644
--- a/stgit/commands/mail.py
+++ b/stgit/commands/mail.py
@@ -247,12 +247,6 @@ def __send_message_git(msg, options):
if getattr(options, x):
cmd.extend('--%s=%s' % (x, a) for a in getattr(options, x))
- # XXX: hack for now so that we don't duplicate To/Cc/Bcc headers
- # in the mail, as git send-email inserts those for us.
- del msg['To']
- del msg['Cc']
- del msg['Bcc']
-
(fd, path) = mkstemp()
os.write(fd, msg.as_string(options.mbox))
os.close(fd)
@@ -277,13 +271,13 @@ def __send_message(type, tmpl, options, *args):
msg_id = email.Utils.make_msgid('stgit')
msg = build(tmpl, msg_id, options, *args)
- from_addr, to_addrs = __parse_addresses(msg)
msg_str = msg.as_string(options.mbox)
if options.mbox:
out.stdout_raw(msg_str + '\n')
return msg_id
if not options.git:
+ from_addr, to_addrs = __parse_addresses(msg)
out.start('Sending ' + outstr)
smtpserver = options.smtp_server or config.get('stgit.smtpserver')
@@ -499,7 +493,8 @@ def __build_cover(tmpl, msg_id, options, patches):
except Exception, ex:
raise CmdException, 'template parsing error: %s' % str(ex)
- __build_address_headers(msg, options)
+ if not options.git:
+ __build_address_headers(msg, options)
__build_extra_headers(msg, msg_id, options.refid)
__encode_message(msg)
@@ -609,7 +604,8 @@ def __build_message(tmpl, msg_id, options, patch, patch_nr, total_nr, ref_id):
else:
extra_cc = []
- __build_address_headers(msg, options, extra_cc)
+ if not options.git:
+ __build_address_headers(msg, options, extra_cc)
__build_extra_headers(msg, msg_id, ref_id)
__encode_message(msg)