mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-03 16:39:01 -06:00 
			
		
		
		
	Kernel/Semaphore: Fixed a regression in semaphore waits.
The regression was caused by a missing check in #2260. The new behavior is consistent with the real kernel.
This commit is contained in:
		@@ -35,7 +35,8 @@ bool Semaphore::ShouldWait(Thread* thread) const {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Semaphore::Acquire(Thread* thread) {
 | 
			
		||||
    ASSERT_MSG(!ShouldWait(thread), "object unavailable!");
 | 
			
		||||
    if (available_count <= 0)
 | 
			
		||||
        return;
 | 
			
		||||
    --available_count;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user