Make WordPress Core

Changeset 34924


Ignore:
Timestamp:
10/08/2015 12:16:07 AM (11 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.