From: Don Armstrong Date: Wed, 23 Sep 2015 16:01:07 +0000 (-0500) Subject: use tmpdir for bugs instead of memory to avoid trouble with large bugs X-Git-Tag: release/2.6.0~222 X-Git-Url: https://git.donarmstrong.com/?p=debbugs.git;a=commitdiff_plain;h=0c66c0bcc10e6ae9c6f2de25e3e332b466641c1f use tmpdir for bugs instead of memory to avoid trouble with large bugs --- diff --git a/Debbugs/CGI/Bugreport.pm b/Debbugs/CGI/Bugreport.pm index 02f30c2..f080986 100644 --- a/Debbugs/CGI/Bugreport.pm +++ b/Debbugs/CGI/Bugreport.pm @@ -43,6 +43,7 @@ use POSIX qw(strftime); use Encode qw(decode_utf8 encode_utf8); use URI::Escape qw(uri_escape_utf8); use Scalar::Util qw(blessed); +use File::Temp; BEGIN{ ($VERSION) = q$Revision: 494 $ =~ /^Revision:\s+([^\s+])/; @@ -447,10 +448,10 @@ sub handle_record{ ) ) .'">mbox, '; my $parser = MIME::Parser->new(); - # Because we are using memory, not tempfiles, there's no need to - # clean up here like in Debbugs::MIME - $parser->tmp_to_core(1); - $parser->output_to_core(1); + + # this will be cleaned up once it goes out of scope + my $tempdir = File::Temp->newdir(); + $parser->output_under($tempdir->dirname()); my $entity = $parser->parse_data($record->{text}); my $r_l = reply_headers($entity); $output .= q(