WordPress.org

Make WordPress Core

Ticket #12459: 12459.3.diff

File 12459.3.diff, 867 bytes (added by Denis-de-Bernardy, 8 years ago)
  • wp-includes/ms-functions.php

     
    4949                return false;
    5050
    5151        $blogs = $match = array();
     52        $prefix_length = strlen($wpdb->base_prefix);
    5253        foreach ( (array) $user as $key => $value ) {
    53                 if ( false !== strpos( $key, '_capabilities') && 0 === strpos( $key, $wpdb->base_prefix ) && preg_match( '/' . $wpdb->base_prefix . '((\d+)_)?capabilities/', $key, $match ) ) {
     54                if ( $prefix_length && substr($key, 0, $prefix_length) != $wpdb->base_prefix )
     55                        continue;
     56                if ( substr($key, -12, 12) != 'capabilities' )
     57                        continue;
     58                if ( preg_match( '/^' . $wpdb->base_prefix . '((\d+)_)?capabilities$/', $key, $match ) ) {
    5459                        if ( count( $match ) > 2 )
    5560                                $blog_id = $match[ 2 ];
    5661                        else