summaryrefslogtreecommitdiff
path: root/gc.c
diff options
context:
space:
mode:
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gc.c b/gc.c
index 7d521eb07a..c107c4e956 100644
--- a/gc.c
+++ b/gc.c
@@ -1311,8 +1311,8 @@ obj_free(VALUE obj)
break;
case T_BIGNUM:
- if (RANY(obj)->as.bignum.digits) {
- RUBY_CRITICAL(free(RANY(obj)->as.bignum.digits));
+ if (!(RBASIC(obj)->flags & RBIGNUM_EMBED_FLAG) && RBIGNUM_DIGITS(obj)) {
+ RUBY_CRITICAL(free(RBIGNUM_DIGITS(obj)));
}
break;
case T_NODE: