From 66badc5b0d1379faa928de2d3ae956749df2edb2 Mon Sep 17 00:00:00 2001 From: gziolo Date: Fri, 9 Feb 2024 10:54:11 +0000 Subject: [PATCH] Editor: Add wakeup magic method to the block bindings registry See #60282. Follow-up [57373]. Props dmsnell, mukesh27, gziolo. Built from https://develop.svn.wordpress.org/trunk@57575 git-svn-id: http://core.svn.wordpress.org/trunk@57076 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- .../class-wp-block-bindings-registry.php | 19 +++++++++++++++++++ wp-includes/class-wp-block.php | 2 +- wp-includes/version.php | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/wp-includes/class-wp-block-bindings-registry.php b/wp-includes/class-wp-block-bindings-registry.php index 65f5f13c36..de6a9d89e4 100644 --- a/wp-includes/class-wp-block-bindings-registry.php +++ b/wp-includes/class-wp-block-bindings-registry.php @@ -211,6 +211,25 @@ final class WP_Block_Bindings_Registry { return isset( $this->sources[ $source_name ] ); } + /** + * Wakeup magic method. + * + * @since 6.5.0 + */ + public function __wakeup() { + if ( ! $this->sources ) { + return; + } + if ( ! is_array( $this->sources ) ) { + throw new UnexpectedValueException(); + } + foreach ( $this->sources as $value ) { + if ( ! $value instanceof WP_Block_Bindings_Source ) { + throw new UnexpectedValueException(); + } + } + } + /** * Utility method to retrieve the main instance of the class. * diff --git a/wp-includes/class-wp-block.php b/wp-includes/class-wp-block.php index 14565ab74a..455ea2e138 100644 --- a/wp-includes/class-wp-block.php +++ b/wp-includes/class-wp-block.php @@ -413,7 +413,7 @@ class WP_Block { // Process the block bindings and get attributes updated with the values from the sources. $computed_attributes = $this->process_block_bindings(); if ( ! empty( $computed_attributes ) ) { - // Merge the computed attributes with the original attributes + // Merge the computed attributes with the original attributes. $this->attributes = array_merge( $this->attributes, $computed_attributes ); } diff --git a/wp-includes/version.php b/wp-includes/version.php index 36d7e23fdc..4b5e3d5cf1 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -16,7 +16,7 @@ * * @global string $wp_version */ -$wp_version = '6.5-alpha-57574'; +$wp_version = '6.5-alpha-57575'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.