summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-17 03:18:21 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-17 03:18:21 +0000
commit0452ea2c330f8839ab85e400b4e588617277efd5 (patch)
tree27d0f045309a6771c6a0dc0f42b8b0c34277fb4a
parent78c5478af83453c7ef1bdfec001aace7437d9c1b (diff)
merge revision(s) 18509:
* array.c (rb_ary_sample): rename #choice to #sample. in addition, sample takes optional argument, a la #first. * random.c (Init_Random): always initialize seed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--random.c6
-rw-r--r--version.h8
3 files changed, 9 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 6a696e5e7d..be11d20e99 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Sat Jan 17 12:16:10 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * random.c (Init_Random): always initialize seed.
+
Fri Jan 16 10:59:31 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (clone_method): should copy cbase in cref as well.
diff --git a/random.c b/random.c
index ad5558bca9..258b0b2230 100644
--- a/random.c
+++ b/random.c
@@ -189,7 +189,6 @@ rb_genrand_real(void)
#include <fcntl.h>
#endif
-static int first = 1;
static VALUE saved_seed = INT2FIX(0);
static VALUE
@@ -245,7 +244,6 @@ rand_init(vseed)
len--;
init_by_array(buf, len);
}
- first = 0;
old = saved_seed;
saved_seed = seed;
free(buf);
@@ -445,9 +443,6 @@ rb_f_rand(argc, argv, obj)
long val, max;
rb_scan_args(argc, argv, "01", &vmax);
- if (first) {
- rand_init(random_seed());
- }
switch (TYPE(vmax)) {
case T_FLOAT:
if (RFLOAT(vmax)->value <= LONG_MAX && RFLOAT(vmax)->value >= LONG_MIN) {
@@ -498,6 +493,7 @@ rb_f_rand(argc, argv, obj)
void
Init_Random()
{
+ rand_init(random_seed());
rb_define_global_function("srand", rb_f_srand, -1);
rb_define_global_function("rand", rb_f_rand, -1);
rb_global_variable(&saved_seed);
diff --git a/version.h b/version.h
index 286e7162b2..abba13b4ca 100644
--- a/version.h
+++ b/version.h
@@ -1,15 +1,15 @@
#define RUBY_VERSION "1.8.7"
-#define RUBY_RELEASE_DATE "2009-01-16"
+#define RUBY_RELEASE_DATE "2009-01-17"
#define RUBY_VERSION_CODE 187
-#define RUBY_RELEASE_CODE 20090116
-#define RUBY_PATCHLEVEL 87
+#define RUBY_RELEASE_CODE 20090117
+#define RUBY_PATCHLEVEL 88
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8
#define RUBY_VERSION_TEENY 7
#define RUBY_RELEASE_YEAR 2009
#define RUBY_RELEASE_MONTH 1
-#define RUBY_RELEASE_DAY 16
+#define RUBY_RELEASE_DAY 17
#ifdef RUBY_EXTERN
RUBY_EXTERN const char ruby_version[];