summaryrefslogtreecommitdiff
path: root/array.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-08-14 03:56:28 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-08-14 03:56:28 +0000
commit39ac1d7c22072f2d520738098692bdbce2f380df (patch)
tree97866a3781af260ce47912f61a6190b9d72270f4 /array.c
parentc086e784e200dc555e3f6d0ddb2edfdffd4f166d (diff)
*** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'array.c')
-rw-r--r--array.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/array.c b/array.c
index 983ce9b951..6150d862dd 100644
--- a/array.c
+++ b/array.c
@@ -167,6 +167,7 @@ ary_s_new(argc, argv, klass)
VALUE *argv;
VALUE klass;
{
+ int len = 0;
VALUE size, val;
NEWOBJ(ary, struct RArray);
OBJSETUP(ary, klass, T_ARRAY);
@@ -186,10 +187,11 @@ ary_s_new(argc, argv, klass)
ArgError("array size too big");
}
ary->capa = capa;
- ary->len = capa;
+ len = capa;
}
ary->ptr = ALLOC_N(VALUE, ary->capa);
- memfill(ary->ptr, ary->len, val);
+ memfill(ary->ptr, len, val);
+ ary->len = len;
obj_call_init((VALUE)ary);
return (VALUE)ary;