From 5ff59381204cabd1e5d4a9bb3510ddeae850f2c7 Mon Sep 17 00:00:00 2001 From: mrkn Date: Fri, 22 Nov 2013 05:55:45 +0000 Subject: * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Insert rb_thread_check_ints. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ ext/bigdecimal/bigdecimal.c | 3 +++ 2 files changed, 7 insertions(+) diff --git a/ChangeLog b/ChangeLog index bb348b3910..93829ca473 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Nov 22 14:55:00 2013 Kenta Murata + + * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Insert rb_thread_check_ints. + Fri Nov 22 14:35:00 2013 Kenta Murata * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Fix the inserting points diff --git a/ext/bigdecimal/bigdecimal.c b/ext/bigdecimal/bigdecimal.c index 99543229ef..af1d5246f5 100644 --- a/ext/bigdecimal/bigdecimal.c +++ b/ext/bigdecimal/bigdecimal.c @@ -2746,6 +2746,9 @@ BigMath_s_exp(VALUE klass, VALUE x, VALUE vprec) SIGNED_VALUE const ey = VpExponent10(DATA_PTR(y)); SIGNED_VALUE const ed = VpExponent10(DATA_PTR(d)); ssize_t m = n - vabs(ey - ed); + + rb_thread_check_ints(); + if (m <= 0) { break; } -- cgit v1.2.3