--- a/wp/wp-includes/blocks/legacy-widget.php Thu Sep 29 08:06:27 2022 +0200
+++ b/wp/wp-includes/blocks/legacy-widget.php Fri Sep 05 18:40:08 2025 +0200
@@ -8,6 +8,10 @@
/**
* Renders the 'core/legacy-widget' block.
*
+ * @since 5.8.0
+ *
+ * @global int $wp_widget_factory.
+ *
* @param array $attributes The block attributes.
*
* @return string Rendered block.
@@ -34,7 +38,7 @@
if ( isset( $attributes['instance']['encoded'], $attributes['instance']['hash'] ) ) {
$serialized_instance = base64_decode( $attributes['instance']['encoded'] );
- if ( wp_hash( $serialized_instance ) !== $attributes['instance']['hash'] ) {
+ if ( ! hash_equals( wp_hash( $serialized_instance ), (string) $attributes['instance']['hash'] ) ) {
return '';
}
$instance = unserialize( $serialized_instance );
@@ -54,6 +58,8 @@
/**
* Registers the 'core/legacy-widget' block.
+ *
+ * @since 5.8.0
*/
function register_block_core_legacy_widget() {
register_block_type_from_metadata(
@@ -70,6 +76,8 @@
* Intercepts any request with legacy-widget-preview in the query param and, if
* set, renders a page containing a preview of the requested Legacy Widget
* block.
+ *
+ * @since 5.8.0
*/
function handle_legacy_widget_preview_iframe() {
if ( empty( $_GET['legacy-widget-preview'] ) ) {