diff --git a/src/WP_CLI/CoreUpgrader.php b/src/WP_CLI/CoreUpgrader.php index c3ecad2d2..f97c37b18 100644 --- a/src/WP_CLI/CoreUpgrader.php +++ b/src/WP_CLI/CoreUpgrader.php @@ -66,14 +66,19 @@ public function download_package( $package ) { */ $headers = array( 'Accept' => 'application/json' ); $options = array( - 'timeout' => 600, // 10 minutes ought to be enough for everybody. - 'filename' => $temp + 'timeout' => 600, // 10 minutes ought to be enough for everybody. + 'filename' => $temp, + 'halt_on_error' => false, ); $this->skin->feedback( 'downloading_package', $package ); /** @var \Requests_Response|null $req */ - $req = Utils\http_request( 'GET', $package, null, $headers, $options ); + try { + $req = Utils\http_request( 'GET', $package, null, $headers, $options ); + } catch( \Exception $e ) { + return new \WP_Error( 'download_failed', $e->getMessage() ); + } if ( ! is_null( $req ) && $req->status_code !== 200 ) { return new \WP_Error( 'download_failed', $this->strings['download_failed'] ); }