diff --git a/ChangeLog b/ChangeLog index 532945f089..b5dc9e208d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Mon Aug 4 13:49:36 2008 Nobuyoshi Nakada + + * bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622] + Mon Aug 4 13:39:53 2008 Nobuyoshi Nakada * ext/openssl/openssl_missing.h (d2i_of_void): define for older diff --git a/bignum.c b/bignum.c index e3d531ceaf..c23b76b1fe 100644 --- a/bignum.c +++ b/bignum.c @@ -11,6 +11,7 @@ **********************************************************************/ #include "ruby.h" +#include "rubysig.h" #include #include @@ -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 f751fecfb5..6d5b35dee6 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 2f4ea645d4..b5c3c1cafe 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