File tree 2 files changed +29
-9
lines changed 2 files changed +29
-9
lines changed Original file line number Diff line number Diff line change
1
+ Thu Oct 22 05:23:48 2015 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
2
+
3
+ * random.c (init_hashseed, init_siphash): extract initialize
4
+ functions.
5
+
1
6
Thu Oct 22 01:01:34 2015 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
2
7
3
8
* configure.in: sort AC_CHECK_HEADERS() by alphabetical order.
Original file line number Diff line number Diff line change @@ -1465,13 +1465,10 @@ init_randomseed(struct MT *mt)
1465
1465
return seed ;
1466
1466
}
1467
1467
1468
- void
1469
- Init_RandomSeed (void )
1468
+ static void
1469
+ init_hashseed (void )
1470
1470
{
1471
- rb_random_t * r = & default_rand ;
1472
- struct MT * mt = & r -> mt ;
1473
- VALUE seed = init_randomseed (mt );
1474
- int i ;
1471
+ struct MT * mt = default_mt ();
1475
1472
1476
1473
hashseed = genrand_int32 (mt );
1477
1474
#if SIZEOF_ST_INDEX_T * CHAR_BIT > 4 * 8
@@ -1486,12 +1483,16 @@ Init_RandomSeed(void)
1486
1483
hashseed <<= 32 ;
1487
1484
hashseed |= genrand_int32 (mt );
1488
1485
#endif
1486
+ }
1487
+
1488
+ static void
1489
+ init_siphash (void )
1490
+ {
1491
+ struct MT * mt = default_mt ();
1492
+ int i ;
1489
1493
1490
1494
for (i = 0 ; i < numberof (sipseed .u32 ); ++ i )
1491
1495
sipseed .u32 [i ] = genrand_int32 (mt );
1492
-
1493
- rb_global_variable (& r -> seed );
1494
- r -> seed = seed ;
1495
1496
}
1496
1497
1497
1498
st_index_t
@@ -1511,6 +1512,20 @@ rb_memhash(const void *ptr, long len)
1511
1512
#endif
1512
1513
}
1513
1514
1515
+ void
1516
+ Init_RandomSeed (void )
1517
+ {
1518
+ rb_random_t * r = & default_rand ;
1519
+ struct MT * mt = & r -> mt ;
1520
+ VALUE seed = init_randomseed (mt );
1521
+
1522
+ init_hashseed ();
1523
+ init_siphash ();
1524
+
1525
+ rb_global_variable (& r -> seed );
1526
+ r -> seed = seed ;
1527
+ }
1528
+
1514
1529
static void
1515
1530
Init_RandomSeed2 (void )
1516
1531
{
You can’t perform that action at this time.
0 commit comments