summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-03-20 23:15:37 +0900
committerGitHub <[email protected]>2018-03-20 23:15:37 +0900
commita85bc19f358d75711744ff444429d16550cdd04f (patch)
treed59b0285cb62580bd2e5a8d4bfe9be319c56b894 /src
parent1a8483f17e61cd30651241d8616d5530d88fdf43 (diff)
parent1218ff5d478e11fb769bfb2a036afd5b11c4dc57 (diff)
downloadmruby-a85bc19f358d75711744ff444429d16550cdd04f.tar.gz
mruby-a85bc19f358d75711744ff444429d16550cdd04f.zip
Merge pull request #3972 from take-cheeze/fix_ary_set_len_assert
Set array length after expanding capacity.
Diffstat (limited to 'src')
-rw-r--r--src/array.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/array.c b/src/array.c
index 285e48a0f..43d2b824f 100644
--- a/src/array.c
+++ b/src/array.c
@@ -256,7 +256,6 @@ mrb_ary_resize(mrb_state *mrb, mrb_value ary, mrb_int new_len)
ary_modify(mrb, a);
old_len = RARRAY_LEN(ary);
if (old_len != new_len) {
- ARY_SET_LEN(a, new_len);
if (new_len < old_len) {
ary_shrink_capa(mrb, a);
}
@@ -264,6 +263,7 @@ mrb_ary_resize(mrb_state *mrb, mrb_value ary, mrb_int new_len)
ary_expand_capa(mrb, a, new_len);
ary_fill_with_nil(ARY_PTR(a) + old_len, new_len - old_len);
}
+ ARY_SET_LEN(a, new_len);
}
return ary;