Fix CID-1420310: cast PY_TIMEOUT_MAX to _Py_time_t (#4646)

Fix the following false-alarm Coverity warning:

    Result is not floating-point
    (UNINTENDED_INTEGER_DIVISION)integer_division: Dividing integer
    expressions 9223372036854775807LL and 1000LL, and then converting
    the integer quotient to type double. Any remainder, or fractional
    part of the quotient, is ignored.

    To compute and use a non-integer quotient, change or cast either
    operand to type double. If integer division is intended, consider
    indicating that by casting the result to type long long .
diff --git a/Modules/_threadmodule.c b/Modules/_threadmodule.c
index aaa13da..c9171f5 100644
--- a/Modules/_threadmodule.c
+++ b/Modules/_threadmodule.c
@@ -1363,7 +1363,7 @@
     if (m == NULL)
         return NULL;
 
-    timeout_max = (double)PY_TIMEOUT_MAX * 1e-6;
+    timeout_max = (_PyTime_t)PY_TIMEOUT_MAX * 1e-6;
     time_max = _PyTime_AsSecondsDouble(_PyTime_MAX);
     timeout_max = Py_MIN(timeout_max, time_max);
     /* Round towards minus infinity */