Site Health: Consistently pass an object to the `auto_update_{$type}` filter in Site Health debug data.

Previously, some instances of the filter received an array from a plugin or theme update response, potentially triggering PHP notices.

Props bpayton, pbiron.
Fixes #50852.
Built from https://develop.svn.wordpress.org/trunk@48745


git-svn-id: http://core.svn.wordpress.org/trunk@48507 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Sergey Biryukov 2020-08-07 13:28:05 +00:00
parent 68dd986b07
commit 5221a27593
2 changed files with 9 additions and 9 deletions

View File

@ -968,11 +968,11 @@ class WP_Debug_Data {
'requires_php' => '', 'requires_php' => '',
'compatibility' => new stdClass(), 'compatibility' => new stdClass(),
); );
$item = (object) array_merge( $item, array_intersect_key( $plugin, $item ) ); $item = array_merge( $item, array_intersect_key( $plugin, $item ) );
} }
/** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */ /** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( 'auto_update_plugin', null, $item ); $auto_update_forced = apply_filters( 'auto_update_plugin', null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) { if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced; $enabled = $auto_update_forced;
@ -1104,7 +1104,7 @@ class WP_Debug_Data {
} elseif ( isset( $transient->no_update[ $active_theme->stylesheet ] ) ) { } elseif ( isset( $transient->no_update[ $active_theme->stylesheet ] ) ) {
$item = $transient->no_update[ $active_theme->stylesheet ]; $item = $transient->no_update[ $active_theme->stylesheet ];
} else { } else {
$item = (object) array( $item = array(
'theme' => $active_theme->stylesheet, 'theme' => $active_theme->stylesheet,
'new_version' => $active_theme->version, 'new_version' => $active_theme->version,
'url' => '', 'url' => '',
@ -1115,7 +1115,7 @@ class WP_Debug_Data {
} }
/** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */ /** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( 'auto_update_theme', null, $item ); $auto_update_forced = apply_filters( 'auto_update_theme', null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) { if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced; $enabled = $auto_update_forced;
@ -1191,7 +1191,7 @@ class WP_Debug_Data {
} elseif ( isset( $transient->no_update[ $parent_theme->stylesheet ] ) ) { } elseif ( isset( $transient->no_update[ $parent_theme->stylesheet ] ) ) {
$item = $transient->no_update[ $parent_theme->stylesheet ]; $item = $transient->no_update[ $parent_theme->stylesheet ];
} else { } else {
$item = (object) array( $item = array(
'theme' => $parent_theme->stylesheet, 'theme' => $parent_theme->stylesheet,
'new_version' => $parent_theme->version, 'new_version' => $parent_theme->version,
'url' => '', 'url' => '',
@ -1202,7 +1202,7 @@ class WP_Debug_Data {
} }
/** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */ /** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( 'auto_update_theme', null, $item ); $auto_update_forced = apply_filters( 'auto_update_theme', null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) { if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced; $enabled = $auto_update_forced;
@ -1280,7 +1280,7 @@ class WP_Debug_Data {
} elseif ( isset( $transient->no_update[ $theme_slug ] ) ) { } elseif ( isset( $transient->no_update[ $theme_slug ] ) ) {
$item = $transient->no_update[ $theme_slug ]; $item = $transient->no_update[ $theme_slug ];
} else { } else {
$item = (object) array( $item = array(
'theme' => $theme_slug, 'theme' => $theme_slug,
'new_version' => $theme->version, 'new_version' => $theme->version,
'url' => '', 'url' => '',
@ -1291,7 +1291,7 @@ class WP_Debug_Data {
} }
/** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */ /** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( 'auto_update_theme', null, $item ); $auto_update_forced = apply_filters( 'auto_update_theme', null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) { if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced; $enabled = $auto_update_forced;

View File

@ -13,7 +13,7 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '5.6-alpha-48744'; $wp_version = '5.6-alpha-48745';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.