diff options
author | Peter Palfrader <peter@palfrader.org> | 2007-10-13 20:26:59 +0000 |
---|---|---|
committer | weasel <weasel@bc3d92e2-beff-0310-a7cd-cc87d7ac0ede> | 2007-10-13 20:26:59 +0000 |
commit | e9e760c63f3ed50229be38ea6afeb0a4d341c98a (patch) | |
tree | fdf8888d549e13c4276561705e4c32a25f797f19 /parse-trac | |
parent | bdc553c1d1400c99e11fe0063654aa0193ec4713 (diff) |
Handle multi-line summaries
git-svn-id: svn+ssh://asteria.noreply.org/svn/weaselutils/trunk@299 bc3d92e2-beff-0310-a7cd-cc87d7ac0ede
Diffstat (limited to 'parse-trac')
-rwxr-xr-x | parse-trac | 14 |
1 files changed, 9 insertions, 5 deletions
@@ -75,9 +75,13 @@ my $body = join '', @mail; $body = decode_base64($body) if ($is_base64); @mail = split(/\r?\n/, $body); -my $first_line = shift @mail; -chomp $first_line; -shift @mail; +my @summary; +while (defined($line = shift @mail)) { + last if $line =~ /^-----------------/ + chomp $line; + push @summary, $line; +}; +$summary = join ' ', @summary; my $reporter; while (defined($line = shift @mail)) { @@ -96,7 +100,7 @@ die ("$PROGRAM_NAME - $project: No reporter found.\n") unless defined $reporter; die ("$PROGRAM_NAME - $project: No tracproject found.\n") unless defined $tracproject; die ("$PROGRAM_NAME - $project: No url found.\n") unless defined $url; die ("$PROGRAM_NAME - $project: No ticketid found.\n") unless defined $ticketid; -die ("$PROGRAM_NAME - $project: No first_line found.\n") unless defined $first_line; +die ("$PROGRAM_NAME - $project: No summary found.\n") unless defined $summary; my $MAXBODYLINES = 5; if (scalar @body > $MAXBODYLINES+1) { # if it's one more let it through, [...] takes a line too @@ -110,7 +114,7 @@ my $notice = $is_a_reply ? "[$tracproject] #$ticketid was updated" : "[$tracproject] #$ticketid filed by $reporter"; -$notice .= ": $first_line - $url"; +$notice .= ": $summary - $url"; #open(MAIL, "|cat") or open(MAIL, "|$SENDMAIL -t -oi -f $ENVELOPE_FROM") or |