diff --git a/ProcessUNIX.c b/ProcessUNIX.c index 07c644b8ef7c9412c6e2be7dc1378d6aa70f6196..74029553b615764eed62dd21ce2bf0dc964919bc 100644 --- a/ProcessUNIX.c +++ b/ProcessUNIX.c @@ -505,6 +505,8 @@ void kwsysProcess_SetTimeout(kwsysProcess* cp, double timeout) { cp->Timeout = 0; } + // Force recomputation of TimeoutTime. + cp->TimeoutTime.tv_sec = -1; } /*--------------------------------------------------------------------------*/ diff --git a/ProcessWin32.c b/ProcessWin32.c index eabd85fee51b14e1906a9f591775b4de11eac2d4..a18ea2748ff79c94ba5d1f3f35b178174046b24f 100644 --- a/ProcessWin32.c +++ b/ProcessWin32.c @@ -698,6 +698,8 @@ void kwsysProcess_SetTimeout(kwsysProcess* cp, double timeout) { cp->Timeout = 0; } + // Force recomputation of TimeoutTime. + cp->TimeoutTime.QuadPart = -1; } /*--------------------------------------------------------------------------*/