vfwcap: Free remaining packets on vfw_read_close().
Originally committed as revision 22575 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
		
							parent
							
								
									ce03ed4df1
								
							
						
					
					
						commit
						ad8eede7b1
					
				@ -210,6 +210,7 @@ fail:
 | 
			
		||||
static int vfw_read_close(AVFormatContext *s)
 | 
			
		||||
{
 | 
			
		||||
    struct vfw_ctx *ctx = s->priv_data;
 | 
			
		||||
    AVPacketList *pktl;
 | 
			
		||||
 | 
			
		||||
    if(ctx->hwnd) {
 | 
			
		||||
        SendMessage(ctx->hwnd, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0);
 | 
			
		||||
@ -221,6 +222,14 @@ static int vfw_read_close(AVFormatContext *s)
 | 
			
		||||
    if(ctx->event)
 | 
			
		||||
        CloseHandle(ctx->event);
 | 
			
		||||
 | 
			
		||||
    pktl = ctx->pktl;
 | 
			
		||||
    while (pktl) {
 | 
			
		||||
        AVPacketList *next = pktl->next;
 | 
			
		||||
        av_destruct_packet(&pktl->pkt);
 | 
			
		||||
        av_free(pktl);
 | 
			
		||||
        pktl = next;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user