lib/PublicInbox/Import.pm | 4 ++++ t/import.t | 2 ++ diff --git a/lib/PublicInbox/Import.pm b/lib/PublicInbox/Import.pm index d8dc49b82f9494815b2d49e140560fbe2fbc41b7..68dc0c7e83c1b223796ee171200d879065e1add2 100644 --- a/lib/PublicInbox/Import.pm +++ b/lib/PublicInbox/Import.pm @@ -293,6 +293,10 @@ ($email) = PublicInbox::Address::emails($sender); } } if (defined $email) { + # Email::Address::XS may leave quoted '<' in addresses, + # which git-fast-import doesn't like + $email =~ tr/<>//d; + # quiet down wide character warnings with utf8::encode utf8::encode($email); } else { diff --git a/t/import.t b/t/import.t index e71dd7146354a5a3d85e52d97b4ac68319878671..b88d308e919079d5216f6bafe9cc018c4397e9c8 100644 --- a/t/import.t +++ b/t/import.t @@ -55,6 +55,8 @@ $im->done; my @revs = $git->qx(qw(rev-list HEAD)); is(scalar @revs, 1, 'one revision created'); +my $odd = '"=?iso-8859-1?Q?J_K=FCpper?= header_set('From', $odd); $mime->header_set('Message-ID', ''); $mime->header_set('Subject', 'msg2'); like($im->add($mime, sub { $mime }), qr/\A:\d+\z/, 'added 2nd message');