diff --git a/time.c b/time.c index 9f009b5a15..1c5fb87dad 100644 --- a/time.c +++ b/time.c @@ -2453,6 +2453,7 @@ obj2subsecx(VALUE obj, VALUE *subsecx) else { divmodv(num_exact(obj), INT2FIX(1), &obj, &subsec); *subsecx = w2v(rb_time_magnify(v2w(subsec))); + RB_GC_GUARD(subsec); } return obj2ubits(obj, 6); /* vtm->sec */ }