Code Modernization: Fix null to non-nullable deprecation in `wp_privacy_anonymize_ip()`.
The `wp_privacy_anonymize_ip()` function expects a string for the `$ip_addr` parameter, but did not do any input validation. One of the pre-existing test cases, passed `null` to the function, leading to a `substr_count(): Passing null to parameter #1 ($haystack) of type string is deprecated` notice on PHP 8.1. Fixed now by doing a cursory check on the variable at the start of the function and bowing out early for a number of cases (`null`, `false`, `0`, `''`) which would all result in the same `0.0.0.0` output anyway. Follow-up [42971]. Props jrf, hellofromTonya. See #53635. Built from https://develop.svn.wordpress.org/trunk@51793 git-svn-id: http://core.svn.wordpress.org/trunk@51400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
78b5f27b1e
commit
b8322a053e
|
@ -7618,6 +7618,10 @@ All at ###SITENAME###
|
||||||
* @return string The anonymized IP address.
|
* @return string The anonymized IP address.
|
||||||
*/
|
*/
|
||||||
function wp_privacy_anonymize_ip( $ip_addr, $ipv6_fallback = false ) {
|
function wp_privacy_anonymize_ip( $ip_addr, $ipv6_fallback = false ) {
|
||||||
|
if ( empty( $ip_addr ) ) {
|
||||||
|
return '0.0.0.0';
|
||||||
|
}
|
||||||
|
|
||||||
// Detect what kind of IP address this is.
|
// Detect what kind of IP address this is.
|
||||||
$ip_prefix = '';
|
$ip_prefix = '';
|
||||||
$is_ipv6 = substr_count( $ip_addr, ':' ) > 1;
|
$is_ipv6 = substr_count( $ip_addr, ':' ) > 1;
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '5.9-alpha-51792';
|
$wp_version = '5.9-alpha-51793';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue