Fixed bug in be-handle-mail.Message.parse_comment() for emails w/o Message-id.
authorW. Trevor King <wking@drexel.edu>
Sat, 21 Nov 2009 18:18:54 +0000 (13:18 -0500)
committerW. Trevor King <wking@drexel.edu>
Sat, 21 Nov 2009 18:18:54 +0000 (13:18 -0500)
You used to get:

Uncaught exception:
'NoneType' object has no attribute 'decode'
  File "./be-handle-mail", line 857, in main
    m.run()
  File "./be-handle-mail", line 591, in run
    command.run()
  File "./be-handle-mail", line 244, in run
    manipulate_encodings=False)
  File "/tmp/be.email-bugs/interfaces/email/interactive/libbe/cmdutil.py", line 82, in execute
    ret = cmd.execute([a.decode(enc) for a in args],

A `print args' in Message.parse_comment() revealed
  [..., u'--alt-id', None,...]

interfaces/email/interactive/be-handle-mail

index fa8069888d4734cbe681a4a7c113a9a45691c5c2..8831e3ce10b4f05838b77ed746ccd87452d4b839 100755 (executable)
@@ -564,8 +564,10 @@ class Message (object):
         if mime_type == "text/plain":
             body = self._strip_footer(body)
         content_type = mime_type
-        args = [u"--author", author, u"--alt-id", alt_id,
-                u"--content-type", content_type, bug_id, u"-"]
+        args = [u"--author", author]
+        if alt_id != None:
+            args.extend([u"--alt-id", alt_id])
+        args.extend([u"--content-type", content_type, bug_id, u"-"])
         commands = [Command(self, command, args, stdin=body)]
         return commands
     def parse_control(self):