Merge remote-tracking branch 'herrb/master'
This commit is contained in:
		
						commit
						1940508a4a
					
				|  | @ -2731,27 +2731,24 @@ IdleTimeBlockHandler(void *pCounter, struct timeval **wt, void *LastSelectMask) | |||
|          * If we've been idle more than it, and someone wants to know about | ||||
|          * that level-triggered, schedule an immediate wakeup. | ||||
|          */ | ||||
|         unsigned long timeout = -1; | ||||
| 
 | ||||
|         if (XSyncValueLessThan(idle, *greater)) { | ||||
|             XSyncValue value; | ||||
|             Bool overflow; | ||||
| 
 | ||||
|             XSyncValueSubtract(&value, *greater, idle, &overflow); | ||||
|             timeout = min(timeout, XSyncValueLow32(value)); | ||||
|             AdjustWaitForDelay(wt, XSyncValueLow32(value)); | ||||
|         } | ||||
|         else { | ||||
|             for (list = counter->sync.pTriglist; list; | ||||
|                  list = list->next) { | ||||
|                 trig = list->pTrigger; | ||||
|                 if (trig->CheckTrigger(trig, old_idle)) { | ||||
|                     timeout = min(timeout, 0); | ||||
|                     AdjustWaitForDelay(wt, 0); | ||||
|                     break; | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         AdjustWaitForDelay(wt, timeout); | ||||
|     } | ||||
| 
 | ||||
|     counter->value = old_idle;  /* pop */ | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue