Index: src/wp-admin/includes/class-wp-upgrader.php
===================================================================
--- src/wp-admin/includes/class-wp-upgrader.php	(revision 25860)
+++ src/wp-admin/includes/class-wp-upgrader.php	(working copy)
@@ -2071,6 +2071,12 @@
 			'timestamp' => time(),
 		) );
 
+		$next_user_core_update = get_preferred_from_update_core();
+		// If the update transient is empty, use the update we just performed
+		if ( ! $next_user_core_update )
+			$next_user_core_update = $core_update;
+		$newer_version_available = ( 'update' == $next_user_core_update->response && version_compare( $next_user_core_update->version, $core_update, '>' ) );
+
 		/**
 		 * Filter whether to send an email following an automatic background core update.
 		 *
@@ -2105,14 +2111,23 @@
 				return;
 		}
 
-		$subject = sprintf( $subject, wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES ), $core_update->current );
+		if ( 'success' == $type )
+			$subject = sprintf( $subject, wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES ), $core_update->current );
+		else
+			$subject = sprintf( $subject, wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES ), $next_user_core_update->current );
 
 		$body = '';
 
 		switch ( $type ) {
 			case 'success' :
 				$body .= sprintf( __( 'Howdy! Your site at %1$s has been updated automatically to WordPress %2$s.' ), home_url(), $core_update->current );
-				$body .= "\n\n" . __( 'No further action is needed on your part.' );
+				if ( ! $newer_version_available ) {
+					$body .= "\n\n" . __( 'No further action is needed on your part.' );
+				} else {
+					$body .= "\n\n" . __( 'WordPress %s is also now available.' ) . ' ';
+					$body .= __( 'Updating is easy and only takes a few moments:' );
+					$body .= "\n" . network_admin_url( 'update-core.php' );
+				}
 
 				// Can only reference the About screen if their update was successful.
 				list( $about_version ) = explode( '-', $core_update->current, 2 );
@@ -2122,17 +2137,24 @@
 
 			case 'fail' :
 			case 'manual' :
-				$body .= sprintf( __( 'Please update your site at %1$s to WordPress %2$s.' ), home_url(), $core_update->current );
+				$body .= sprintf( __( 'Please update your site at %1$s to WordPress %2$s.' ), home_url(), $next_user_core_update->current );
 
 				$body .= "\n\n";
-				if ( 'fail' == $type )
-					$body .= __( 'We tried but were unable to update your site automatically.' ) . ' ';
+				if ( 'fail' == $type ) {
+					if ( $newer_version_available ) {
+						$body .= sprintf( __( 'We tried but were unable to update your site automatically to WordPress %s.' ), $core_update->current );
+					} else {
+						$body .= __( 'We tried but were unable to update your site automatically.' );
+					}
+					$body .= ' ';
+				}
+
 				$body .= __( 'Updating is easy and only takes a few moments:' );
 				$body .= "\n" . network_admin_url( 'update-core.php' );
 				break;
 
 			case 'critical' :
-				$body .= sprintf( __( 'Your site at %1$s experienced a critical failure while trying to update to the latest version of WordPress, %2$s.' ), home_url(), $core_update->current );
+				$body .= sprintf( __( 'Your site at %1$s experienced a critical failure while trying to update to WordPress, %2$s.' ), home_url(), $core_update->current );
 
 				$body .= "\n\n" . __( "This means your site may be offline or broken. Don't panic; this can be fixed." );
 
