avdevice/alsa: fix indefinite stop on closing PCM capture
Fixes: https://bugs.archlinux.org/task/58619 Found-by: Elias (Bleuzen) https://bugs.archlinux.org/user/26956 Signed-off-by: Nicolas George <george@nsup.org>
This commit is contained in:
		
							parent
							
								
									22c820f509
								
							
						
					
					
						commit
						f9a061a31c
					
				@ -300,8 +300,10 @@ av_cold int ff_alsa_close(AVFormatContext *s1)
 | 
			
		||||
{
 | 
			
		||||
    AlsaData *s = s1->priv_data;
 | 
			
		||||
 | 
			
		||||
    snd_pcm_nonblock(s->h, 0);
 | 
			
		||||
    snd_pcm_drain(s->h);
 | 
			
		||||
    if (snd_pcm_stream(s->h) == SND_PCM_STREAM_PLAYBACK) {
 | 
			
		||||
        snd_pcm_nonblock(s->h, 0);
 | 
			
		||||
        snd_pcm_drain(s->h);
 | 
			
		||||
    }
 | 
			
		||||
    av_freep(&s->reorder_buf);
 | 
			
		||||
    if (CONFIG_ALSA_INDEV)
 | 
			
		||||
        ff_timefilter_destroy(s->timefilter);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user