diff options
author | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-04 15:55:30 +0000 |
---|---|---|
committer | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-05-04 15:55:30 +0000 |
commit | efae6ae3529a7aff557acf13c9a7a51a3d60cd83 (patch) | |
tree | 5a95c0d2de7571641640efe0bb325daffd446d12 | |
parent | 1dcdd256f7c41b3e8528c8ca520623bdf26e1817 (diff) |
merge revision(s) r45015: [Backport #9657]
* ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard.
* ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@45815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ext/bigdecimal/bigdecimal.c | 9 | ||||
-rw-r--r-- | version.h | 2 |
3 files changed, 14 insertions, 3 deletions
@@ -1,3 +1,9 @@ +Mon May 5 00:52:18 2014 Kenta Murata <mrkn@mrkn.jp> + + * ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard. + + * ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto. + Mon May 5 00:42:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> * ext/psych/psych.gemspec: update gemspec for psych-2.0.5 diff --git a/ext/bigdecimal/bigdecimal.c b/ext/bigdecimal/bigdecimal.c index 4120a2346d..6425a17db2 100644 --- a/ext/bigdecimal/bigdecimal.c +++ b/ext/bigdecimal/bigdecimal.c @@ -2456,9 +2456,11 @@ static Real *BigDecimal_new(int argc, VALUE *argv); static VALUE BigDecimal_initialize(int argc, VALUE *argv, VALUE self) { + ENTER(1); Real *pv = rb_check_typeddata(self, &BigDecimal_data_type); - Real *x = BigDecimal_new(argc, argv); + Real *x; + GUARD_OBJ(x, BigDecimal_new(argc, argv)); if (ToValue(x)) { pv = VpCopy(pv, x); } @@ -2539,7 +2541,10 @@ BigDecimal_new(int argc, VALUE *argv) static VALUE BigDecimal_global_new(int argc, VALUE *argv, VALUE self) { - Real *pv = BigDecimal_new(argc, argv); + ENTER(1); + Real *pv; + + GUARD_OBJ(pv, BigDecimal_new(argc, argv)); if (ToValue(pv)) pv = VpCopy(NULL, pv); pv->obj = TypedData_Wrap_Struct(rb_cBigDecimal, &BigDecimal_data_type, pv); return pv->obj; @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.1.2" #define RUBY_RELEASE_DATE "2014-05-05" -#define RUBY_PATCHLEVEL 86 +#define RUBY_PATCHLEVEL 87 #define RUBY_RELEASE_YEAR 2014 #define RUBY_RELEASE_MONTH 5 |