diff options
author | Peter Palfrader <peter@palfrader.org> | 2007-05-23 21:58:09 +0000 |
---|---|---|
committer | weasel <weasel@bc3d92e2-beff-0310-a7cd-cc87d7ac0ede> | 2007-05-23 21:58:09 +0000 |
commit | 877b067d87d7b7b47687f50f16c9dd0dff28c39e (patch) | |
tree | 0fb4f1e438d376c779802bda487ecbdf1d3451cb | |
parent | 28d474fad503f5cecb9dfe726f666aec3b79db29 (diff) |
handle base64
git-svn-id: svn+ssh://asteria.noreply.org/svn/weaselutils/trunk@275 bc3d92e2-beff-0310-a7cd-cc87d7ac0ede
-rwxr-xr-x | parse-trac | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -24,6 +24,7 @@ $project =~ m/^([a-zA-Z-]+(\.[a-zA-Z-]+)*)+$/; $project = $1; die ("Project is not a nice name.\n") unless defined $project; +my $is_base64 = 0; open (MAIL, $ARGV[1]) || die ("Cannot open $ARGV[1]: $!\n"); my @mail = <MAIL>; @@ -63,10 +64,17 @@ while (defined($line = shift @headers)) { $url =~ s/^https:/http:/; } elsif ($line =~ m/^X-Trac-Ticket-ID:\s*(.*)/i) { $ticketid = $1; + } elsif ($line =~ m/^Content-Transfer-Encoding: base64$/s) { + $is_base64 = 1; } elsif ($line =~ m/^$/) { last; } }; + +my $body = join '', @mail; +$body = decode_base64($body) if ($is_base64); +@mail = split(/\n/, $body); + my $first_line = shift @mail; chomp $first_line; shift @mail; |