Index: wp-includes/comment.php
===================================================================
--- wp-includes/comment.php	(revision 10195)
+++ wp-includes/comment.php	(working copy)
@@ -1261,6 +1261,9 @@
 
 	$contents = $response['body'];
 
+	if ( is_wp_error( $contents ) )
+		return false;
+
 	$pingback_link_offset_dquote = strpos($contents, $pingback_str_dquote);
 	$pingback_link_offset_squote = strpos($contents, $pingback_str_squote);
 	if ( $pingback_link_offset_dquote || $pingback_link_offset_squote ) {
Index: wp-includes/functions.php
===================================================================
--- wp-includes/functions.php	(revision 10195)
+++ wp-includes/functions.php	(working copy)
@@ -1276,7 +1276,7 @@
 
 	$response = wp_remote_get( $uri, $options );
 
-	if ( is_wp_error( $response ) )
+	if ( is_wp_error( $response ) || is_wp_error( $response['body'] ) )
 		return false;
 
 	return $response['body'];
Index: wp-admin/update-links.php
===================================================================
--- wp-admin/update-links.php	(revision 10195)
+++ wp-admin/update-links.php	(working copy)
@@ -41,7 +41,7 @@
 if ( is_wp_error( $response ) )
 	wp_die(__('Request Failed.'));
 
-if ( $response['response']['code'] != 200 )
+if ( $response['response']['code'] != 200 || is_wp_error( $response['body'] ) )
 	wp_die(__('Request Failed.'));
 
 $body = str_replace(array("\r\n", "\r"), "\n", $response['body']);
Index: wp-admin/includes/plugin-install.php
===================================================================
--- wp-admin/includes/plugin-install.php	(revision 10195)
+++ wp-admin/includes/plugin-install.php	(working copy)
@@ -39,7 +39,7 @@
 
 	if ( ! $res ) {
 		$request = wp_remote_post('http://api.wordpress.org/plugins/info/1.0/', array( 'body' => array('action' => $action, 'request' => serialize($args))) );
-		if ( is_wp_error($request) ) {
+		if ( is_wp_error($request) || is_wp_error($request['body']) ) {
 			$res = new WP_Error('plugins_api_failed', __('An Unexpected HTTP Error occured during the API request.</p> <p><a href="?" onclick="document.location.reload(); return false;">Try again</a>'), $request->get_error_message() );
 		} else {
 			$res = unserialize($request['body']);
Index: wp-admin/includes/file.php
===================================================================
--- wp-admin/includes/file.php	(revision 10195)
+++ wp-admin/includes/file.php	(working copy)
@@ -443,7 +443,7 @@
 
 	$response = wp_remote_get($url, array('timeout' => 30));
 
-	if ( is_wp_error($response) ) {
+	if ( is_wp_error($response) || ( isset( $response['body'] ) && is_wp_error( $response['body'] ) ) ) {
 		fclose($handle);
 		unlink($tmpfname);
 		return $response;
