Index: wp-includes/update.php
===================================================================
--- wp-includes/update.php	(revision 34449)
+++ wp-includes/update.php	(working copy)
@@ -118,11 +118,16 @@
 	);
 
 	$response = wp_remote_post( $url, $options );
-	if ( $ssl && is_wp_error( $response ) ) {
+	if ( ! $ssl && is_wp_error( $response ) ) {
 		trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
 		$response = wp_remote_post( $http_url, $options );
 	}
 
+	if ( is_wp_error( $response ) ) {
+		trigger_error( $response->get_error_message() . ' ' . __( 'If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
+		return;
+	}
+
 	if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
 		return;
 	}
@@ -298,11 +303,16 @@
 		$url = set_url_scheme( $url, 'https' );
 
 	$raw_response = wp_remote_post( $url, $options );
-	if ( $ssl && is_wp_error( $raw_response ) ) {
+	if ( ! $ssl && is_wp_error( $raw_response ) ) {
 		trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
 		$raw_response = wp_remote_post( $http_url, $options );
 	}
 
+	if ( is_wp_error( $raw_response ) ) {
+		trigger_error( $raw_response->get_error_message() . ' ' . __( 'If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
+		return;
+	}
+
 	if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
 		return;
 	}
@@ -462,11 +472,16 @@
 		$url = set_url_scheme( $url, 'https' );
 
 	$raw_response = wp_remote_post( $url, $options );
-	if ( $ssl && is_wp_error( $raw_response ) ) {
+	if ( ! $ssl && is_wp_error( $raw_response ) ) {
 		trigger_error( __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server&#8217;s configuration. If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ) . ' ' . __( '(WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.)' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
 		$raw_response = wp_remote_post( $http_url, $options );
 	}
 
+	if ( is_wp_error( $raw_response ) ) {
+		trigger_error( $raw_response->get_error_message() . ' ' . __( 'If you continue to have problems, please try the <a href="https://wordpress.org/support/">support forums</a>.' ), headers_sent() || WP_DEBUG ? E_USER_WARNING : E_USER_NOTICE );
+		return;
+	}
+
 	if ( is_wp_error( $raw_response ) || 200 != wp_remote_retrieve_response_code( $raw_response ) ) {
 		return;
 	}
