summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-04 04:52:05 (GMT)
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-08-04 04:52:05 (GMT)
commit8f667853a34ca67826eb6b7d76ec1e89a47327ac (patch)
treeed2a6ec55c18608728c0c0584d55f0b74f4d37f6
parentc9463ec0af9151533c590e00fb8d45e51d679001 (diff)
merge revision(s) 18211:
* bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@18337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--bignum.c3
-rw-r--r--common.mk3
-rw-r--r--version.h2
4 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 532945f..b5dc9e2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Aug 4 13:49:36 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622]
+
Mon Aug 4 13:39:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/openssl/openssl_missing.h (d2i_of_void): define for older
diff --git a/bignum.c b/bignum.c
index e3d531c..c23b76b 100644
--- a/bignum.c
+++ b/bignum.c
@@ -11,6 +11,7 @@
**********************************************************************/
#include "ruby.h"
+#include "rubysig.h"
#include <math.h>
#include <ctype.h>
@@ -709,6 +710,7 @@ rb_big2str0(x, base, trim)
s = RSTRING(ss)->ptr;
s[0] = RBIGNUM(x)->sign ? '+' : '-';
+ TRAP_BEG;
while (i && j > 1) {
long k = i;
BDIGIT_DBL num = 0;
@@ -738,6 +740,7 @@ rb_big2str0(x, base, trim)
RSTRING(ss)->len = i;
}
s[RSTRING(ss)->len] = '\0';
+ TRAP_END;
return ss;
}
diff --git a/common.mk b/common.mk
index f751fec..6d5b35d 100644
--- a/common.mk
+++ b/common.mk
@@ -341,7 +341,8 @@ array.$(OBJEXT): {$(VPATH)}array.c {$(VPATH)}ruby.h config.h \
{$(VPATH)}defines.h {$(VPATH)}intern.h {$(VPATH)}missing.h \
{$(VPATH)}util.h {$(VPATH)}st.h
bignum.$(OBJEXT): {$(VPATH)}bignum.c {$(VPATH)}ruby.h config.h \
- {$(VPATH)}defines.h {$(VPATH)}intern.h {$(VPATH)}missing.h
+ {$(VPATH)}defines.h {$(VPATH)}intern.h {$(VPATH)}missing.h \
+ {$(VPATH)}rubysig.h
class.$(OBJEXT): {$(VPATH)}class.c {$(VPATH)}ruby.h config.h \
{$(VPATH)}defines.h {$(VPATH)}intern.h {$(VPATH)}missing.h \
{$(VPATH)}rubysig.h {$(VPATH)}node.h {$(VPATH)}st.h
diff --git a/version.h b/version.h
index 2f4ea64..b5c3c1c 100644
--- a/version.h
+++ b/version.h
@@ -2,7 +2,7 @@
#define RUBY_RELEASE_DATE "2008-08-04"
#define RUBY_VERSION_CODE 186
#define RUBY_RELEASE_CODE 20080804
-#define RUBY_PATCHLEVEL 282
+#define RUBY_PATCHLEVEL 283
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8