aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--array.c1
2 files changed, 4 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e2bee6c22c..d44366b53a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,9 @@ Wed Dec 17 15:44:28 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_pop_m): use enum ary_take_pos_flags.
+ * array.c (rb_ary_push_m): add modification check before actual
+ operation. [ruby-dev:37440]
+
Wed Dec 17 15:35:39 2008 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* configure.in (OBJDUMP, OBJCOPY):
diff --git a/array.c b/array.c
index 535cfd0605..3ba450cbe9 100644
--- a/array.c
+++ b/array.c
@@ -693,6 +693,7 @@ rb_ary_push(VALUE ary, VALUE item)
static VALUE
rb_ary_push_m(int argc, VALUE *argv, VALUE ary)
{
+ rb_ary_modify_check(ary);
while (argc--) {
rb_ary_push(ary, *argv++);
}