From: Victor Stinner Date: Thu, 30 Nov 2017 22:03:47 +0000 (+0100) Subject: Fix CID-1420310: cast PY_TIMEOUT_MAX to _Py_time_t (#4646) X-Git-Tag: v3.7.0a3~37 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c319eeeb45043ee45384b8064c53ddbfde1673cd;p=thirdparty%2FPython%2Fcpython.git 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 aaa13da890b1..c9171f52e385 100644 --- a/Modules/_threadmodule.c +++ b/Modules/_threadmodule.c @@ -1363,7 +1363,7 @@ PyInit__thread(void) 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 */