avformat/webpenc: Check seeks
Addresses the issue reported in ticket #4609. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
		
							parent
							
								
									e920a84801
								
							
						
					
					
						commit
						155f0c8ef7
					
				@ -177,8 +177,8 @@ static int webp_write_trailer(AVFormatContext *s)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    if (w->using_webp_anim_encoder) {
 | 
					    if (w->using_webp_anim_encoder) {
 | 
				
			||||||
        if (w->loop) {  // Write loop count.
 | 
					        if (w->loop) {  // Write loop count.
 | 
				
			||||||
            avio_seek(s->pb, 42, SEEK_SET);
 | 
					            if (avio_seek(s->pb, 42, SEEK_SET) == 42)
 | 
				
			||||||
            avio_wl16(s->pb, w->loop);
 | 
					                avio_wl16(s->pb, w->loop);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
        int ret;
 | 
					        int ret;
 | 
				
			||||||
@ -186,10 +186,11 @@ static int webp_write_trailer(AVFormatContext *s)
 | 
				
			|||||||
            return ret;
 | 
					            return ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        filesize = avio_tell(s->pb);
 | 
					        filesize = avio_tell(s->pb);
 | 
				
			||||||
        avio_seek(s->pb, 4, SEEK_SET);
 | 
					        if (avio_seek(s->pb, 4, SEEK_SET) == 4) {
 | 
				
			||||||
        avio_wl32(s->pb, filesize - 8);
 | 
					            avio_wl32(s->pb, filesize - 8);
 | 
				
			||||||
        // Note: without the following, avio only writes 8 bytes to the file.
 | 
					            // Note: without the following, avio only writes 8 bytes to the file.
 | 
				
			||||||
        avio_seek(s->pb, filesize, SEEK_SET);
 | 
					            avio_seek(s->pb, filesize, SEEK_SET);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user