hdr_buf($self, $part) if $part->{is_submsg};
$s =~ s/\r\n/\n/sg;
_xs($s);
- $s .= "\n" unless substr($s, -1, 1) eq "\n";
my $diff = ($s =~ /^--- [^\n]+\n\+{3} [^\n]+\n@@ /ms);
my @sections = PublicInbox::MsgIter::split_quotes($s);
undef $s; # free memory
# returns an array of quoted or unquoted sections
sub split_quotes {
+ # some editors don't put trailing newlines at the end,
+ # make sure split_quotes can work:
+ $_[0] .= "\n" if substr($_[0], -1) ne "\n";
+
# Quiet "Complex regular subexpression recursion limit" warning
# in case an inconsiderate sender quotes 32K of text at once.
# The warning from Perl is harmless for us since our callers can
# tolerate less-than-ideal matches which work within Perl limits.
no warnings 'regexp';
- split(/((?:^>[^\n]*\n)+)/sm, shift);
+ split(/((?:^>[^\n]*\n)+)/sm, $_[0]);
}
1;
$ctx->{-spfx} = $spfx;
};
- # some editors don't put trailing newlines at the end:
- $s .= "\n" unless $s =~ /\n\z/s;
-
# split off quoted and unquoted blocks:
my @sections = PublicInbox::MsgIter::split_quotes($s);
undef $s; # free memory