From 57f6329ba7aa744101efe026bea0a0bd46c77fc8 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 13 Dec 2024 11:52:19 +0900 Subject: [PATCH] Check RUBY_THREAD_TIMESLICE value --- thread.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/thread.c b/thread.c index 2d2951d18a..961e604856 100644 --- a/thread.c +++ b/thread.c @@ -5511,7 +5511,13 @@ Init_Thread(void) const char * ptr = getenv("RUBY_THREAD_TIMESLICE"); if (ptr) { - thread_default_quantum_ms = (uint32_t)strtol(ptr, NULL, 0); + long quantum = strtol(ptr, NULL, 0); + if (quantum > 0 && quantum <= UINT32_MAX) { + thread_default_quantum_ms = (uint32_t)quantum; + } + else if (0) { + fprintf(stderr, "Ignored RUBY_THREAD_TIMESLICE=%s\n", ptr); + } } {