os: Recompute whether any clients are ready after ProcessWorkQueue() (bug 98030)
If a work proc wakes up a sleeping client and it is ready to execute, we need to re-compute the local 'are_ready' value before deciding what timeout value to use in WaitForSomething. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98030 Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
2c91f3235a
commit
9ed5b26354
|
@ -204,8 +204,10 @@ WaitForSomething(Bool are_ready)
|
||||||
crashed connections and the screen saver timeout */
|
crashed connections and the screen saver timeout */
|
||||||
while (1) {
|
while (1) {
|
||||||
/* deal with any blocked jobs */
|
/* deal with any blocked jobs */
|
||||||
if (workQueue)
|
if (workQueue) {
|
||||||
ProcessWorkQueue();
|
ProcessWorkQueue();
|
||||||
|
are_ready = clients_are_ready();
|
||||||
|
}
|
||||||
|
|
||||||
if (are_ready)
|
if (are_ready)
|
||||||
timeout = 0;
|
timeout = 0;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user