avutil/fifo: Fix the case where func() returns less bytes than requested in av_fifo_generic_write()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit fcbea93cf8)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
			
			
This commit is contained in:
		
				
					committed by
					
						
						Michael Niedermayer
					
				
			
			
				
	
			
			
			
						parent
						
							2e7bd0f725
						
					
				
				
					commit
					a330aca126
				
			@@ -129,7 +129,8 @@ int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size,
 | 
			
		||||
    do {
 | 
			
		||||
        int len = FFMIN(f->end - wptr, size);
 | 
			
		||||
        if (func) {
 | 
			
		||||
            if (func(src, wptr, len) <= 0)
 | 
			
		||||
            len = func(src, wptr, len);
 | 
			
		||||
            if (len <= 0)
 | 
			
		||||
                break;
 | 
			
		||||
        } else {
 | 
			
		||||
            memcpy(wptr, src, len);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user