diff options
Diffstat (limited to 'winsup/cygwin/miscfuncs.cc')
-rw-r--r-- | winsup/cygwin/miscfuncs.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/winsup/cygwin/miscfuncs.cc b/winsup/cygwin/miscfuncs.cc index 6956d38be..fea1b1249 100644 --- a/winsup/cygwin/miscfuncs.cc +++ b/winsup/cygwin/miscfuncs.cc @@ -306,12 +306,13 @@ low_priority_sleep (DWORD secs) staylow = true; } - if (curr_prio != THREAD_PRIORITY_NORMAL) + int main_prio = GetThreadPriority (hMainThread); + if (curr_prio != main_prio) /* Force any threads in normal priority to be scheduled */ - SetThreadPriority (thisthread, THREAD_PRIORITY_NORMAL); + SetThreadPriority (thisthread, main_prio); Sleep (secs); - if (!staylow || curr_prio == THREAD_PRIORITY_NORMAL) + if (!staylow || curr_prio == main_prio) SetThreadPriority (thisthread, curr_prio); return curr_prio; } |