From 9c409e31f27b808bd308a083d492100c56315523 Mon Sep 17 00:00:00 2001 From: Aaron Jorbin Date: Tue, 24 Mar 2015 17:30:26 +0000 Subject: [PATCH] Fill `$plugins['upgrade']` with extra info for use in list table Shiny updates depends upon information from the update_plugins site transient in order to set data- attributes which are used by JavaScript. Since /wp-admin/plugins.php?plugin_status=upgrade uses `$plugin['upgrade']` rather than `$plugins['all']`, we need to fill that information in both places. Fixes #31738. Built from https://develop.svn.wordpress.org/trunk@31872 git-svn-id: http://core.svn.wordpress.org/trunk@31851 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/includes/class-wp-plugins-list-table.php | 9 +++++++++ wp-includes/version.php | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/wp-admin/includes/class-wp-plugins-list-table.php b/wp-admin/includes/class-wp-plugins-list-table.php index 120ce5c48b..536e261873 100644 --- a/wp-admin/includes/class-wp-plugins-list-table.php +++ b/wp-admin/includes/class-wp-plugins-list-table.php @@ -125,8 +125,17 @@ class WP_Plugins_List_Table extends WP_List_Table { // Extra info if known. array_merge() ensures $plugin_data has precedence if keys collide. if ( isset( $plugin_info->response[ $plugin_file ] ) ) { $plugins['all'][ $plugin_file ] = $plugin_data = array_merge( (array) $plugin_info->response[ $plugin_file ], $plugin_data ); + // Make sure that $plugins['upgrade'] also recieves the extra info since it is used on ?plugin_status=upgrade + if (isset( $plugins['upgrade'][ $plugin_file ] ) ) { + $plugins['upgrade'][ $plugin_file ] = $plugin_data = array_merge( (array) $plugin_info->response[ $plugin_file ], $plugin_data ); + } + } elseif ( isset( $plugin_info->no_update[ $plugin_file ] ) ) { $plugins['all'][ $plugin_file ] = $plugin_data = array_merge( (array) $plugin_info->no_update[ $plugin_file ], $plugin_data ); + // Make sure that $plugins['upgrade'] also recieves the extra info since it is used on ?plugin_status=upgrade + if (isset( $plugins['upgrade'][ $plugin_file ] ) ) { + $plugins['upgrade'][ $plugin_file ] = $plugin_data = array_merge( (array) $plugin_info->no_update[ $plugin_file ], $plugin_data ); + } } // Filter into individual sections diff --git a/wp-includes/version.php b/wp-includes/version.php index 531ec2814d..e63f951387 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -4,7 +4,7 @@ * * @global string $wp_version */ -$wp_version = '4.2-beta2-31871'; +$wp_version = '4.2-beta2-31872'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.