Committer: vad
Added header X-Accept-EncodingU trunk/lib/Apache/BML.pm
Modified: trunk/lib/Apache/BML.pm =================================================================== --- trunk/lib/Apache/BML.pm 2010-09-09 10:45:34 UTC (rev 130) +++ trunk/lib/Apache/BML.pm 2010-10-05 09:19:59 UTC (rev 131) @@ -404,11 +404,18 @@ LJ::Request->header_out("ETag", $etag) if defined $etag; # gzip encoding - my $do_gzip = $env->{'DoGZIP'} && $Apache::BML::HAVE_ZLIB; - $do_gzip = 0 if $do_gzip && $content_type !~ m!^text/html!; - $do_gzip = 0 if $do_gzip && LJ::Request->header_in("Accept-Encoding") !~ /gzip/; + my $do_gzip = $env->{'DoGZIP'} && $Apache::BML::HAVE_ZLIB && $LJ::DO_GZIP; my $length = length($html); - $do_gzip = 0 if $length < 500; + if (LJ::Request->header_in("X-Accept-Encoding") =~ m/gzip/){ + ## X-Accept-Encoding strictly demands gzip encoding + $do_gzip = 1 if $Apache::BML::HAVE_ZLIB; # do if we could + } else { + ## other weighing + $do_gzip = 0 if $do_gzip && $content_type !~ m!^text/html!; + $do_gzip = 0 if $do_gzip && LJ::Request->header_in("Accept-Encoding") !~ /gzip/; + $do_gzip = 0 if $length < 500; + } + if ($do_gzip) { my $pre_len = $length; LJ::Request->notes("bytes_pregzip" => $pre_len); @@ -2008,6 +2015,11 @@ return "[ml_getter not defined]"; } +sub ml_multi { + my $codes = shift; + return LJ::Lang::get_text_multi(get_language(), undef, $codes); +} + sub eurl { my $a = $_[0];