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 4b38c27782..49691359f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Oct 2 21:37:04 2013 Yusuke Endoh <mame@tsg.ne.jp>
+
+ * random.c (make_seed_value): a local array declaration was accessed
+ out of scope. Coverity Scan found this bug.
+
Wed Oct 2 18:52:40 2013 Koichi Sasada <ko1@atdot.net>
* gc.c: relax GC condition due to malloc_limit.
diff --git a/random.c b/random.c
index 289c24d4c4..4026614044 100644
--- a/random.c
+++ b/random.c
@@ -495,10 +495,10 @@ make_seed_value(const uint32_t *ptr)
{
VALUE seed;
size_t len;
+ uint32_t buf[DEFAULT_SEED_CNT+1];
if (ptr[DEFAULT_SEED_CNT-1] <= 1) {
/* set leading-zero-guard */
- uint32_t buf[DEFAULT_SEED_CNT+1];
MEMCPY(buf, ptr, uint32_t, DEFAULT_SEED_CNT);
buf[DEFAULT_SEED_CNT] = 1;
ptr = buf;