From 88b3c278ebde6bca90d033708f76926719cd7bc0 Mon Sep 17 00:00:00 2001
From: jrfnl <jrfnl@users.noreply.github.com>
Date: Thu, 18 Jul 2019 02:50:51 +0200
Subject: [PATCH] Simplify & modernize *_Upgrader_Skin::feedback()

---
 src/wp-admin/includes/class-automatic-upgrader-skin.php | 5 ++---
 src/wp-admin/includes/class-bulk-upgrader-skin.php      | 5 ++---
 src/wp-admin/includes/class-wp-ajax-upgrader-skin.php   | 8 ++++----
 src/wp-admin/includes/class-wp-upgrader-skin.php        | 5 ++---
 4 files changed, 10 insertions(+), 13 deletions(-)

diff --git a/src/wp-admin/includes/class-automatic-upgrader-skin.php b/src/wp-admin/includes/class-automatic-upgrader-skin.php
index 5f8360f066..3966e2a3db 100644
--- a/src/wp-admin/includes/class-automatic-upgrader-skin.php
+++ b/src/wp-admin/includes/class-automatic-upgrader-skin.php
@@ -58,8 +58,9 @@ class Automatic_Upgrader_Skin extends WP_Upgrader_Skin {
 
 	/**
 	 * @param string|array|WP_Error $data
+	 * @param mixed                 ...$args Optional text replacements.
 	 */
-	public function feedback( $data ) {
+	public function feedback( $data, ...$args ) {
 		if ( is_wp_error( $data ) ) {
 			$string = $data->get_error_message();
 		} elseif ( is_array( $data ) ) {
@@ -72,8 +73,6 @@ class Automatic_Upgrader_Skin extends WP_Upgrader_Skin {
 		}
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( ! empty( $args ) ) {
 				$string = vsprintf( $string, $args );
 			}
diff --git a/src/wp-admin/includes/class-bulk-upgrader-skin.php b/src/wp-admin/includes/class-bulk-upgrader-skin.php
index c1454e62f1..6c4ede5614 100644
--- a/src/wp-admin/includes/class-bulk-upgrader-skin.php
+++ b/src/wp-admin/includes/class-bulk-upgrader-skin.php
@@ -50,15 +50,14 @@ class Bulk_Upgrader_Skin extends WP_Upgrader_Skin {
 
 	/**
 	 * @param string $string
+	 * @param mixed  ...$args Optional text replacements.
 	 */
-	public function feedback( $string ) {
+	public function feedback( $string, ...$args ) {
 		if ( isset( $this->upgrader->strings[ $string ] ) ) {
 			$string = $this->upgrader->strings[ $string ];
 		}
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( $args ) {
 				$args   = array_map( 'strip_tags', $args );
 				$args   = array_map( 'esc_html', $args );
diff --git a/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php b/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php
index dbcc40f0d0..bb92eeef02 100644
--- a/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php
+++ b/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php
@@ -113,16 +113,16 @@ class WP_Ajax_Upgrader_Skin extends Automatic_Upgrader_Skin {
 	 *
 	 * @since 4.6.0
 	 *
-	 * @param string|array|WP_Error $data Log entry data.
+	 * @param string|array|WP_Error $data    Log entry data.
+	 * @param mixed                 ...$args Optional text replacements.
 	 */
-	public function feedback( $data ) {
+	public function feedback( $data, ...$args ) {
 		if ( is_wp_error( $data ) ) {
 			foreach ( $data->get_error_codes() as $error_code ) {
 				$this->errors->add( $error_code, $data->get_error_message( $error_code ), $data->get_error_data( $error_code ) );
 			}
 		}
 
-		$args = func_get_args();
-		call_user_func_array( array( $this, 'parent::feedback' ), $args );
+		parent::feedback( $data, ...$args );
 	}
 }
diff --git a/src/wp-admin/includes/class-wp-upgrader-skin.php b/src/wp-admin/includes/class-wp-upgrader-skin.php
index ddcfd19f18..aff625b59b 100644
--- a/src/wp-admin/includes/class-wp-upgrader-skin.php
+++ b/src/wp-admin/includes/class-wp-upgrader-skin.php
@@ -140,15 +140,14 @@ class WP_Upgrader_Skin {
 
 	/**
 	 * @param string $string
+	 * @param mixed  ...$args Optional text replacements.
 	 */
-	public function feedback( $string ) {
+	public function feedback( $string, ...$args ) {
 		if ( isset( $this->upgrader->strings[ $string ] ) ) {
 			$string = $this->upgrader->strings[ $string ];
 		}
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( $args ) {
 				$args   = array_map( 'strip_tags', $args );
 				$args   = array_map( 'esc_html', $args );
-- 
2.21.0.windows.1

