[FFmpeg-devel] [PATCH] auenc: do not write invalid file size

Paul B Mahol onemda at gmail.com
Fri Dec 28 14:24:54 CET 2012


Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
 libavformat/au.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavformat/au.c b/libavformat/au.c
index 3648e89..4cf8966 100644
--- a/libavformat/au.c
+++ b/libavformat/au.c
@@ -174,12 +174,10 @@ static int au_write_packet(AVFormatContext *s, AVPacket *pkt)
 static int au_write_trailer(AVFormatContext *s)
 {
     AVIOContext *pb = s->pb;
-    int64_t file_size;
-
-    if (s->pb->seekable) {
+    int64_t file_size = avio_tell(pb);
 
+    if (s->pb->seekable && file_size < INT32_MAX) {
         /* update file size */
-        file_size = avio_tell(pb);
         avio_seek(pb, 8, SEEK_SET);
         avio_wb32(pb, (uint32_t)(file_size - AU_HEADER_SIZE));
         avio_seek(pb, file_size, SEEK_SET);
-- 
1.7.11.4



More information about the ffmpeg-devel mailing list