Skip to:
Content

bbPress.org

Changeset 6156


Ignore:
Timestamp:
12/09/2016 02:08:07 PM (6 years ago)
Author:
xknown
Message:

Fix PHP 7 compat issues w.r.t. the use of func_get_arg().

func_get_arg() returns the current (modified) value of the given argument. Let's make sure the code behaves the same.

See #3033

Location:
branches/1.1/bb-includes
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/1.1/bb-includes/functions.bb-forums.php

    r2739 r6156  
    6262        $args = array( 'child_of' => $args, 'hierarchical' => 1, 'depth' => 0 );
    6363    } elseif ( is_callable($args) ) {
     64        $_args = func_get_args();
    6465        $args = array( 'callback' => $args );
    6566        if ( 1 < func_num_args() )
    66             $args['callback_args'] = func_get_arg(1);
     67            $args['callback_args'] = $_args[1];
    6768    }
    6869
  • branches/1.1/bb-includes/functions.bb-template.php

    r4895 r6156  
    917917    global $bb_forums_loop;
    918918
     919    $_args = func_get_args();
    919920    $default_type = 'flat';
    920921
     
    923924    } elseif ( func_num_args() > 1 ) { // bb_forums( 'ul', $args ); Deprecated
    924925        $default_type = $args;
    925         $args = func_get_arg(1);
     926        $args = $_args[1];
    926927    } elseif ( $args && is_string($args) && false === strpos($args, '=') ) {
    927928        $args = array( 'type' => $args );
     
    32263227
    32273228function bb_tag_heat_map( $args = '' ) {
     3229    $_args = func_get_args();
    32283230    $defaults = array( 'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'limit' => 40, 'format' => 'flat' );
    32293231    $args = wp_parse_args( $args, $defaults );
    32303232
    32313233    if ( 1 < $fn = func_num_args() ) : // For back compat
    3232         $args['smallest'] = func_get_arg(0);
    3233         $args['largest']  = func_get_arg(1);
    3234         $args['unit']     = 2 < $fn ? func_get_arg(2) : $unit;
    3235         $args['limit']    = 3 < $fn ? func_get_arg(3) : $limit;
     3234        $args['smallest'] = $_args[0];
     3235        $args['largest']  = $_args[1];
     3236        $args['unit']     = 2 < $fn ? $_args[2] : $unit;
     3237        $args['limit']    = 3 < $fn ? $_args[3] : $limit;
    32363238    endif;
    32373239
     
    33133315
    33143316function bb_forum_dropdown( $args = '' ) {
     3317    $_args = func_get_args();
    33153318    if ( $args && is_string($args) && false === strpos($args, '=') )
    33163319        $args = array( 'callback' => $args );
    33173320    if ( 1 < func_num_args() )
    3318         $args['callback_args'] = func_get_arg(1);
     3321        $args['callback_args'] = $_args[1];
    33193322    echo bb_get_forum_dropdown( $args );
    33203323}
    33213324
    33223325function bb_get_forum_dropdown( $args = '' ) {
     3326    $_args = func_get_args();
    33233327    $defaults = array( 'callback' => false, 'callback_args' => false, 'id' => 'forum_id', 'none' => false, 'selected' => false, 'tab' => false, 'hierarchical' => 1, 'depth' => 0, 'child_of' => 0, 'disable_categories' => 1, 'options_only' => false );
    33243328    if ( $args && is_string($args) && false === strpos($args, '=') )
    33253329        $args = array( 'callback' => $args );
    33263330    if ( 1 < func_num_args() )
    3327         $args['callback_args'] = func_get_arg(1);
     3331        $args['callback_args'] = $_args[1];
    33283332
    33293333    $args = wp_parse_args( $args, $defaults );
  • branches/1.1/bb-includes/functions.bb-topic-tags.php

    r3854 r6156  
    355355function get_tagged_topics( $args ) {
    356356    global $tagged_topic_count;
     357    $_args = func_get_args();
    357358    $defaults = array( 'tag_id' => false, 'page' => 1, 'number' => false, 'count' => true );
    358359    if ( is_numeric( $args ) )
     
    361362        $args = wp_parse_args( $args ); // Make sure it's an array
    362363    if ( 1 < func_num_args() )
    363         $args['page'] = func_get_arg(1);
     364        $args['page'] = $_args[1];
    364365    if ( 2 < func_num_args() )
    365         $args['number'] = func_get_arg(2);
     366        $args['number'] = $_args[2];
    366367
    367368    $args = wp_parse_args( $args, $defaults );
     
    377378
    378379function get_tagged_topic_posts( $args ) {
     380    $_args = func_get_args();
    379381    $defaults = array( 'tag_id' => false, 'page' => 1, 'number' => false );
    380382    if ( is_numeric( $args ) )
     
    383385        $args = wp_parse_args( $args ); // Make sure it's an array
    384386    if ( 1 < func_num_args() )
    385         $args['page'] = func_get_arg(1);
     387        $args['page'] = $_args[1];
    386388    if ( 2 < func_num_args() )
    387         $args['number'] = func_get_arg(2);
     389        $args['number'] = $_args[2];
    388390
    389391    $args = wp_parse_args( $args, $defaults );
  • branches/1.1/bb-includes/functions.bb-topics.php

    r2798 r6156  
    6060
    6161function get_latest_topics( $args = null ) {
     62    $_args = func_get_args();
    6263    $defaults = array( 'forum' => false, 'page' => 1, 'exclude' => false, 'number' => false );
    6364    if ( is_numeric( $args ) )
     
    6667        $args = wp_parse_args( $args ); // Make sure it's an array
    6768    if ( 1 < func_num_args() )
    68         $args['page'] = func_get_arg(1);
     69        $args['page'] = $_args[1];
    6970    if ( 2 < func_num_args() )
    70         $args['exclude'] = func_get_arg(2);
     71        $args['exclude'] = $_args[2];
    7172
    7273    $args = wp_parse_args( $args, $defaults );
     
    437438
    438439function get_thread( $topic_id, $args = null ) {
     440    $_args = func_get_args();
    439441    $defaults = array( 'page' => 1, 'order' => 'ASC' );
    440442    if ( is_numeric( $args ) )
    441443        $args = array( 'page' => $args );
    442     if ( @func_get_arg(2) )
     444    if ( @$_args[2] )
    443445        $defaults['order'] = 'DESC';
    444446
Note: See TracChangeset for help on using the changeset viewer.