diff --git a/wp-admin/includes/ajax-actions.php b/wp-admin/includes/ajax-actions.php index 1addff7934..a705e43e65 100644 --- a/wp-admin/includes/ajax-actions.php +++ b/wp-admin/includes/ajax-actions.php @@ -2902,6 +2902,7 @@ function wp_ajax_update_plugin() { 'oldVersion' => '', 'newVersion' => '', ); + $plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin ); if ( $plugin_data['Version'] ) { $status['oldVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] ); @@ -2921,10 +2922,15 @@ function wp_ajax_update_plugin() { wp_update_plugins(); } - $upgrader = new Plugin_Upgrader( new Automatic_Upgrader_Skin() ); + $skin = new Automatic_Upgrader_Skin(); + $upgrader = new Plugin_Upgrader( $skin ); $result = $upgrader->bulk_upgrade( array( $plugin ) ); - if ( is_array( $result ) ) { + if ( is_array( $result ) && empty( $result[$plugin] ) && is_wp_error( $skin->result ) ) { + $result = $skin->result; + } + + if ( is_array( $result ) && !empty( $result[ $plugin ] ) ) { $plugin_update_data = current( $result ); /* @@ -2939,7 +2945,8 @@ function wp_ajax_update_plugin() { wp_send_json_error( $status ); } - $plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin ); + $plugin_data = get_plugins( '/' . $result[ $plugin ]['destination_name'] ); + $plugin_data = reset( $plugin_data ); if ( $plugin_data['Version'] ) { $status['newVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] ); diff --git a/wp-admin/options-discussion.php b/wp-admin/options-discussion.php index 41450fc4d8..5b5f2f5572 100644 --- a/wp-admin/options-discussion.php +++ b/wp-admin/options-discussion.php @@ -66,7 +66,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
+