summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--random.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index f9cbacf270..9ef9d4b2cb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Jul 30 21:43:41 2009 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * random.c (random_bytes): use NUM2LONG instead of FIX2LONG because
+ Random#bytes may receive bignum.
+
Thu Jul 30 21:39:42 2009 Yusuke Endoh <mame@tsg.ne.jp>
* compile.c (iseq_compile_each): fix stack consistency error.
diff --git a/random.c b/random.c
index c3fce95311..bfdfaf6f3c 100644
--- a/random.c
+++ b/random.c
@@ -797,7 +797,7 @@ rb_random_real(VALUE obj)
static VALUE
random_bytes(VALUE obj, VALUE len)
{
- return rb_random_bytes(obj, FIX2LONG(rb_to_int(len)));
+ return rb_random_bytes(obj, NUM2LONG(rb_to_int(len)));
}
VALUE