mruby-task: fix integer conversion warning by using uint32_t for sleep functions

change sleep_us_impl and sleep_ms_impl parameters from mrb_int to uint32_t.
this makes the type requirement explicit and resolves msvc warning c4244.
all type conversions happen at ruby boundary functions after validation.

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
Yukihiro "Matz" Matsumoto
2025-10-16 16:34:01 +09:00
parent 0082dfb7e5
commit 34205d6ba3
+5 -5
View File
@@ -483,7 +483,7 @@ mrb_task_run(mrb_state *mrb)
*/
static void
sleep_us_impl(mrb_state *mrb, mrb_int usec)
sleep_us_impl(mrb_state *mrb, uint32_t usec)
{
mrb_task *t;
@@ -535,7 +535,7 @@ sleep_us_impl(mrb_state *mrb, mrb_int usec)
}
static void
sleep_ms_impl(mrb_state *mrb, mrb_int ms)
sleep_ms_impl(mrb_state *mrb, uint32_t ms)
{
sleep_us_impl(mrb, ms * 1000);
}
@@ -567,7 +567,7 @@ mrb_f_sleep(mrb_state *mrb, mrb_value self)
}
mrb_int ms = (mrb_int)(sec * 1000);
sleep_ms_impl(mrb, ms);
sleep_ms_impl(mrb, (uint32_t)ms);
return mrb_fixnum_value((mrb_int)sec);
}
@@ -583,7 +583,7 @@ mrb_f_sleep_ms(mrb_state *mrb, mrb_value self)
mrb_raise(mrb, E_ARGUMENT_ERROR, "time interval must be positive");
}
sleep_ms_impl(mrb, ms);
sleep_ms_impl(mrb, (uint32_t)ms);
return mrb_nil_value();
}
@@ -599,7 +599,7 @@ mrb_f_usleep(mrb_state *mrb, mrb_value self)
mrb_raise(mrb, E_ARGUMENT_ERROR, "time interval must be positive");
}
sleep_us_impl(mrb, usec);
sleep_us_impl(mrb, (uint32_t)usec);
return mrb_fixnum_value(usec);
}