From a2b00b87ee5d2613dcfbb841a2f179b9266694e4 Mon Sep 17 00:00:00 2001 From: Jonathan Desrosiers Date: Fri, 7 Aug 2020 13:49:47 +0000 Subject: [PATCH] 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. Merges [48745] to the 5.5 branch. Reviewed by desrosj, SergeyBiryukov. Props bpayton, pbiron. Fixes #50852. git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48747 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-admin/includes/class-wp-debug-data.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/wp-admin/includes/class-wp-debug-data.php b/src/wp-admin/includes/class-wp-debug-data.php index 2f438fb363..3f9d9cd659 100644 --- a/src/wp-admin/includes/class-wp-debug-data.php +++ b/src/wp-admin/includes/class-wp-debug-data.php @@ -968,11 +968,11 @@ class WP_Debug_Data { 'requires_php' => '', '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 */ - $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 ) ) { $enabled = $auto_update_forced; @@ -1104,7 +1104,7 @@ class WP_Debug_Data { } elseif ( isset( $transient->no_update[ $active_theme->stylesheet ] ) ) { $item = $transient->no_update[ $active_theme->stylesheet ]; } else { - $item = (object) array( + $item = array( 'theme' => $active_theme->stylesheet, 'new_version' => $active_theme->version, 'url' => '', @@ -1115,7 +1115,7 @@ class WP_Debug_Data { } /** 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 ) ) { $enabled = $auto_update_forced; @@ -1191,7 +1191,7 @@ class WP_Debug_Data { } elseif ( isset( $transient->no_update[ $parent_theme->stylesheet ] ) ) { $item = $transient->no_update[ $parent_theme->stylesheet ]; } else { - $item = (object) array( + $item = array( 'theme' => $parent_theme->stylesheet, 'new_version' => $parent_theme->version, 'url' => '', @@ -1202,7 +1202,7 @@ class WP_Debug_Data { } /** 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 ) ) { $enabled = $auto_update_forced; @@ -1280,7 +1280,7 @@ class WP_Debug_Data { } elseif ( isset( $transient->no_update[ $theme_slug ] ) ) { $item = $transient->no_update[ $theme_slug ]; } else { - $item = (object) array( + $item = array( 'theme' => $theme_slug, 'new_version' => $theme->version, 'url' => '', @@ -1291,7 +1291,7 @@ class WP_Debug_Data { } /** 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 ) ) { $enabled = $auto_update_forced;