WordPress.org

Make WordPress Core

Changeset 34924


Ignore:
Timestamp:
10/08/2015 12:16:07 AM (4 years ago)
Author:
dd32
Message:

Revert [34922] pending PHP 5.2 compatibility.
See #28633

Location:
trunk/src/wp-includes
Files:
1 deleted
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/compat.php

    r34922 r34924  
    333333    }
    334334}
    335 
    336 // random_int was introduced in PHP 7.0
    337 if ( ! function_exists( 'random_int' ) ) {
    338     require ABSPATH . WPINC . '/random_compat/random.php';
    339 }
  • trunk/src/wp-includes/pluggable.php

    r34922 r34924  
    21332133 *
    21342134 * @since 2.6.2
    2135  * @since 4.4 Uses PHP7 random_int() or the random_compat library if avaialble.
    21362135 *
    21372136 * @global string $rnd_value
    21382137 * @staticvar string $seed
    2139  * @staticvar bool $external_rand_source_available
    21402138 *
    21412139 * @param int $min Lower limit for the generated number
     
    21452143function wp_rand( $min = 0, $max = 0 ) {
    21462144    global $rnd_value;
    2147 
    2148     // Some misconfigured 32bit environments (Entropy PHP, for example) truncate integers larger than PHP_INT_MAX to PHP_INT_MAX rather than overflowing them to floats.
    2149     $max_random_number = 3000000000 === 2147483647 ? (float) "4294967295" : 4294967295; // 4294967295 = 0xffffffff
    2150 
    2151     // We only handle Ints, floats are truncated to their integer value.
    2152     $min = (int) $min;
    2153     $max = (int) $max;
    2154 
    2155     // Use PHP's CSPRNG, or a compatible method
    2156     static $use_random_int_functionality = true;
    2157     if ( $use_random_int_functionality ) {
    2158         try {
    2159             $_max = ( 0 != $max ) ? $max : $max_random_number;
    2160             // wp_rand() can accept arguements in either order, PHP cannot.
    2161             $_max = max( $min, $_max );
    2162             $_min = min( $min, $_max );
    2163             $val = random_int( $_min, $_max );
    2164             if ( false !== $val ) {
    2165                 return absint( $val );
    2166             } else {
    2167                 $use_random_int_functionality = false;
    2168             }
    2169         } catch ( Throwable $t ) {
    2170             $use_random_int_functionality = false;
    2171         } catch ( Exception $e ) {
    2172             $use_random_int_functionality = false;
    2173         }
    2174     }
    21752145
    21762146    // Reset $rnd_value after 14 uses
     
    21972167
    21982168    $value = abs(hexdec($value));
     2169
     2170    // Some misconfigured 32bit environments (Entropy PHP, for example) truncate integers larger than PHP_INT_MAX to PHP_INT_MAX rather than overflowing them to floats.
     2171    $max_random_number = 3000000000 === 2147483647 ? (float) "4294967295" : 4294967295; // 4294967295 = 0xffffffff
    21992172
    22002173    // Reduce the value to be within the min - max range
Note: See TracChangeset for help on using the changeset viewer.