summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-07-07 23:04:25 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-07-07 23:04:25 +0000
commita25f95f8b77317c5857e47375f56bf9cc14cf386 (patch)
tree12de1a04af2194e26da694582fb1943166ca8718
parent4cb5abe277cb6cbb9d863fe1e4a545cdc384e34d (diff)
* bignum.c (bary_mul): Add a RB_GC_GUARD.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--bignum.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 2df68499a1..ac7ec8a557 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Jul 8 08:03:01 2013 Tanaka Akira <akr@fsij.org>
+
+ * bignum.c (bary_mul): Add a RB_GC_GUARD.
+
Sun Jul 7 23:56:32 2013 Tanaka Akira <akr@fsij.org>
* bignum.c (bary_mul_karatsuba): Unreachable code removed. Remove
diff --git a/bignum.c b/bignum.c
index 4c1c5f74a1..834bbc1eb8 100644
--- a/bignum.c
+++ b/bignum.c
@@ -1867,6 +1867,7 @@ bary_mul(BDIGIT *zds, size_t zl, BDIGIT *xds, size_t xl, BDIGIT *yds, size_t yl)
z = bigtrunc(bigmul1_toom3(x, y));
MEMCPY(zds, BDIGITS(z), BDIGIT, RBIGNUM_LEN(z));
MEMZERO(zds + RBIGNUM_LEN(z), BDIGIT, zl - RBIGNUM_LEN(z));
+ RB_GC_GUARD(z);
}
}