Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
08/08/2019 08:11:51 PM (6 years ago)
Author:
boonebgorges
Message:

Cast func_get_args() to variable early in class methods.

Since PHP 7.0, calling func_get_args() returns the current value of
the parameter, which may have been modified since the beginning of the
method. By storing the original function arguments in a variable at the
beginning of the method, we ensure that the value operated on later in
the method accurately reflects what was originally passed.

In most cases addressed by this changeset, there was no real-world
possibility that the arguments could be changed; we make this change
mostly as a best practice, and to appease the PHP compatibility linter.

Fixes #8125.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-activity/classes/class-bp-activity-activity.php

    r12420 r12426  
    361361        global $wpdb;
    362362
     363        $function_args = func_get_args();
     364
    363365        // Backward compatibility with old method of passing arguments.
    364         if ( !is_array( $args ) || func_num_args() > 1 ) {
     366        if ( !is_array( $args ) || count( $function_args ) > 1 ) {
    365367            _deprecated_argument( __METHOD__, '1.6', sprintf( __( 'Arguments passed to %1$s should be in an associative array. See the inline documentation at %2$s for more details.', 'buddypress' ), __METHOD__, __FILE__ ) );
    366368
     
    379381            );
    380382
    381             $args = bp_core_parse_args_array( $old_args_keys, func_get_args() );
     383            $args = bp_core_parse_args_array( $old_args_keys, $function_args );
    382384        }
    383385
     
    14681470        global $wpdb;
    14691471
     1472        $function_args = func_get_args();
     1473
    14701474        if ( empty( $top_level_parent_id ) ) {
    14711475            $top_level_parent_id = $activity_id;
     
    15151519             * @param array                $func_args Array of the method's argument list.
    15161520             */
    1517             if ( apply_filters( 'bp_use_legacy_activity_query', false, __METHOD__, func_get_args() ) ) {
     1521            if ( apply_filters( 'bp_use_legacy_activity_query', false, __METHOD__, $function_args ) ) {
    15181522
    15191523                /**
Note: See TracChangeset for help on using the changeset viewer.