From 675fe390b9c8d75795ff10bb5c8d8728be4ba11f Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Fri, 20 Jan 2023 01:34:41 +0000 Subject: [PATCH] Code Modernization: Use correct property in `IXR_Message::tag_open()`. The `IXR_Message` class declares a property `_currentTag`, which is never assigned or used. It does assign to `currentTag` instead, which outside of that one assignment is never used either. Since there are various other underscore-prefixed properties declared on the class, including one named `_currentTagContents` which is used in several places, it appears that the declared property is correct and the assignment is a typo. This commit resolves a notice on PHP 8.2: {{{ Deprecated: Creation of dynamic property IXR_Message::$currentTag is deprecated }}} Follow-up to [1346]. Props bjorsch, kraftbj, jrf, mukesh27, SergeyBiryukov. See #56790. git-svn-id: https://develop.svn.wordpress.org/trunk@55105 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/IXR/class-IXR-message.php | 2 +- tests/phpunit/tests/xmlrpc/message.php | 34 +++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 tests/phpunit/tests/xmlrpc/message.php diff --git a/src/wp-includes/IXR/class-IXR-message.php b/src/wp-includes/IXR/class-IXR-message.php index 6c1279e69c..2b27293f52 100644 --- a/src/wp-includes/IXR/class-IXR-message.php +++ b/src/wp-includes/IXR/class-IXR-message.php @@ -144,7 +144,7 @@ class IXR_Message function tag_open($parser, $tag, $attr) { $this->_currentTagContents = ''; - $this->currentTag = $tag; + $this->_currentTag = $tag; switch($tag) { case 'methodCall': case 'methodResponse': diff --git a/tests/phpunit/tests/xmlrpc/message.php b/tests/phpunit/tests/xmlrpc/message.php new file mode 100644 index 0000000000..ac68552902 --- /dev/null +++ b/tests/phpunit/tests/xmlrpc/message.php @@ -0,0 +1,34 @@ +1' ); + $this->assertTrue( $message->parse() ); + $this->assertSame( 'methodResponse', $message->messageType ); // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + $this->assertSame( array( '1' ), $message->params ); + } + +}