player: wake up decoder before waiting for xfade chunks
Fix a deadlock: when the decoder waited for buffer space, the player could enter a deadlock situation because it waits for more chunks for crossfading chunks. Signal the decoder before entering notify_wait().
This commit is contained in:
		@@ -429,6 +429,7 @@ static void do_play(void)
 | 
			
		||||
						/* wait for the
 | 
			
		||||
						   decoder */
 | 
			
		||||
						music_pipe_set_lazy(false);
 | 
			
		||||
						notify_signal(&dc.notify);
 | 
			
		||||
						notify_wait(&pc.notify);
 | 
			
		||||
						continue;
 | 
			
		||||
					}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user