WordPress.org

Make WordPress Core

Ticket #42251: 42251.diff

File 42251.diff, 2.0 KB (added by flixos90, 2 years ago)
  • src/wp-admin/includes/schema.php

     
    955955                $wpdb->insert( $wpdb->site, array( 'domain' => $domain, 'path' => $path, 'id' => $network_id ) );
    956956        }
    957957
     958        if ( function_exists( 'clean_network_cache' ) ) {
     959                clean_network_cache( $network_id );
     960        } else {
     961                wp_cache_delete( $network_id, 'networks' );
     962        }
     963
    958964        wp_cache_delete( 'networks_have_paths', 'site-options' );
    959965
    960966        if ( !is_multisite() ) {
  • src/wp-includes/class-wp-network.php

     
    101101
    102102                $_network = wp_cache_get( $network_id, 'networks' );
    103103
    104                 if ( ! $_network ) {
     104                if ( false === $_network ) {
    105105                        $_network = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->site} WHERE id = %d LIMIT 1", $network_id ) );
    106106
    107107                        if ( empty( $_network ) || is_wp_error( $_network ) ) {
    108                                 return false;
     108                                $_network = -1;
    109109                        }
    110110
    111111                        wp_cache_add( $network_id, $_network, 'networks' );
    112112                }
    113113
     114                if ( is_numeric( $_network ) ) {
     115                        return false;
     116                }
     117
    114118                return new WP_Network( $_network );
    115119        }
    116120
  • src/wp-includes/class-wp-site.php

     
    163163
    164164                $_site = wp_cache_get( $site_id, 'sites' );
    165165
    166                 if ( ! $_site ) {
     166                if ( false === $_site ) {
    167167                        $_site = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->blogs} WHERE blog_id = %d LIMIT 1", $site_id ) );
    168168
    169169                        if ( empty( $_site ) || is_wp_error( $_site ) ) {
    170                                 return false;
     170                                $_site = -1;
    171171                        }
    172172
    173173                        wp_cache_add( $site_id, $_site, 'sites' );
    174174                }
    175175
     176                if ( is_numeric( $_site ) ) {
     177                        return false;
     178                }
     179
    176180                return new WP_Site( $_site );
    177181        }
    178182