Skip to:
Content

bbPress.org


Ignore:
Timestamp:
08/11/2020 05:48:29 AM (4 months ago)
Author:
xknown
Message:

Sync the _wp_filter_build_unique_id function to rWP38282

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/0.9/bb-includes/wp-functions.php

    r7117 r7119  
    884884endif;
    885885
    886 if ( !function_exists('_wp_filter_build_unique_id') ) : // [WP6025]
     886if ( !function_exists('_wp_filter_build_unique_id') ) : // [WP38282]
    887887function _wp_filter_build_unique_id($tag, $function, $priority = 10)
    888888{
    889889    global $wp_filter;
    890 
    891     // If function then just skip all of the tests and not overwrite the following.
    892     // Static Calling
     890    static $filter_id_count = 0;
     891
    893892    if( is_string($function) )
    894893        return $function;
    895894
    896     if ( is_object( $function ) ) {
     895    if ( is_object( $function ) ) {
    897896        // Closures are currently implemented as objects.
    898897        $function = array( $function, '' );
    899     } else {
     898    } else {
    900899        $function = (array) $function;
    901900    }
    902901
    903     // Object Class Calling
    904     if(is_object($function[0]) )
     902    if ( is_object($function[0]) )
    905903    {
     904        // Object Class Calling
    906905        if ( function_exists('spl_object_hash') ) {
    907906            return spl_object_hash($function[0]) . $function[1];
    908907        } else {
    909908            $obj_idx = get_class($function[0]).$function[1];
    910             if( is_null($function[0]->wp_filter_id) ) {
    911                 $count = count((array)$wp_filter[$tag][$priority]);
    912                 $function[0]->wp_filter_id = $count;
    913                 $obj_idx .= $count;
    914                 unset($count);
    915             } else
     909            if ( !isset($function[0]->wp_filter_id) ) {
     910                if ( false === $priority )
     911                    return false;
     912                $obj_idx .= isset($wp_filter[$tag][$priority]) ? count((array)$wp_filter[$tag][$priority]) : $filter_id_count;
     913                $function[0]->wp_filter_id = $filter_id_count;
     914                ++$filter_id_count;
     915            } else {
    916916                $obj_idx .= $function[0]->wp_filter_id;
     917            }
    917918            return $obj_idx;
    918919        }
Note: See TracChangeset for help on using the changeset viewer.