summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-10-15 14:24:14 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-10-15 14:24:14 +0000
commitb93e896d3703fe755b55162fcde4d4733a7ddbd2 (patch)
tree5c01b2dfe7d47ad8f97be32e8a2dd0d207da72af
parent43979d409f663f142a9eb1319ed1285d2da29a8d (diff)
merge revision(s) r47896: [Backport #10369]
* array.c (ary_recycle_hash): add RB_GC_GUARD (rb_ary_diff): remove volatile [Bug #10369] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--array.c3
-rw-r--r--version.h2
3 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a9586ff9c3..23b8d106e4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Oct 15 23:13:43 2014 Eric Wong <e@80x24.org>
+
+ * array.c (ary_recycle_hash): add RB_GC_GUARD
+ (rb_ary_diff): remove volatile
+ [Bug #10369]
+
Wed Oct 15 23:10:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (dir_s_aref): fix rdoc. `Dir.glob` allows an array but
diff --git a/array.c b/array.c
index 79f7d3b537..7760e3313e 100644
--- a/array.c
+++ b/array.c
@@ -3949,6 +3949,7 @@ ary_recycle_hash(VALUE hash)
RHASH(hash)->ntbl = 0;
st_free_table(tbl);
}
+ RB_GC_GUARD(hash);
}
/*
@@ -3972,7 +3973,7 @@ static VALUE
rb_ary_diff(VALUE ary1, VALUE ary2)
{
VALUE ary3;
- volatile VALUE hash;
+ VALUE hash;
long i;
hash = ary_make_hash(to_ary(ary2));
diff --git a/version.h b/version.h
index 1ce6b38ab5..85ff2c9117 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "2.1.4"
#define RUBY_RELEASE_DATE "2014-10-15"
-#define RUBY_PATCHLEVEL 251
+#define RUBY_PATCHLEVEL 252
#define RUBY_RELEASE_YEAR 2014
#define RUBY_RELEASE_MONTH 10