Author: pescetti
Date: Sat Jan 9 17:43:42 2016
New Revision: 1723866
URL: http://svn.apache.org/viewvc?rev=1723866&view=rev
Log:
#i126469# Fix failing checksums at first download attempt in ./bootstrap
Patch By: j.nitschke <[email protected]>
Modified:
openoffice/trunk/main/solenv/bin/download_external_dependencies.pl
Modified: openoffice/trunk/main/solenv/bin/download_external_dependencies.pl
URL:
http://svn.apache.org/viewvc/openoffice/trunk/main/solenv/bin/download_external_dependencies.pl?rev=1723866&r1=1723865&r2=1723866&view=diff
==============================================================================
--- openoffice/trunk/main/solenv/bin/download_external_dependencies.pl
(original)
+++ openoffice/trunk/main/solenv/bin/download_external_dependencies.pl Sat Jan
9 17:43:42 2016
@@ -85,15 +85,7 @@ use File::Basename;
use Digest::MD5;
use Digest::SHA;
use URI;
-my $simple = 1;
-if ($simple)
-{
- use LWP::Simple;
-}
-else
-{
- use LWP::UserAgent;
-}
+use LWP::UserAgent;
my $Debug = 1;
@@ -538,55 +530,26 @@ sub DownloadFile ($$$)
# Download the extension.
my $success = 0;
- if ($simple)
+
+ my $agent = LWP::UserAgent->new();
+ $agent->env_proxy;
+ my $response = $agent->get($URL);
+
+ $success = $response->is_success;
+ if ($success)
{
- my $content = LWP::Simple::get($URL);
- $success = defined $content;
- if ($success)
- {
- open $out, ">$temporary_filename";
- binmode($out);
- print $out $content;
- close($out);
- $digest->add($content);
- }
- else
- {
- print "download from $URL failed\n";
- }
+ my $content = $response->content;
+ open $out, ">$temporary_filename";
+ binmode($out);
+ print $out $content;
+ $digest->add($content);
}
else
{
- my $agent = LWP::UserAgent->new();
- $agent->timeout(120);
- $agent->env_proxy;
- $agent->show_progress(1);
- my $last_was_redirect = 0;
- $agent->add_handler('response_redirect'
- => sub{
- $last_was_redirect = 1;
- return;
- });
- $agent->add_handler('response_data'
- => sub{
- if ($last_was_redirect)
- {
- $last_was_redirect = 0;
- # Throw away the data we got so far.
- $digest->reset();
- close $out;
- open $out, ">$temporary_filename";
- binmode($out);
- }
- my($response,$agent,$h,$data)=@_;
- print $out $data;
- $digest->add($data);
- });
-
- $success = $agent->get($URL)->is_success();
- close $out;
+ print "download from $URL failed\n";
}
-
+ close($out);
+
# When download was successful then check the checksum and rename the
.part file
# into the actual extension name.
if ($success)