OSDN Git Service

movenc-test: Fix integer overflows
authorMichael Niedermayer <michael@niedermayer.cc>
Mon, 23 Nov 2015 13:25:41 +0000 (14:25 +0100)
committerMartin Storsjö <martin@martin.st>
Tue, 24 Nov 2015 18:57:11 +0000 (20:57 +0200)
Signed-off-by: Martin Storsjö <martin@martin.st>
libavformat/movenc-test.c
tests/ref/fate/movenc

index 0a1384e..0c40b3a 100644 (file)
@@ -60,8 +60,8 @@ AVStream *video_st, *audio_st;
 int64_t audio_dts, video_dts;
 
 int bframes;
-int duration;
-int audio_duration;
+int64_t duration;
+int64_t audio_duration;
 int frames;
 int gop_size;
 int64_t next_p_pts;
@@ -196,9 +196,9 @@ static void init_fps(int bf, int audio_preroll, int fps)
     frames = 0;
     gop_size = 30;
     duration = video_st->time_base.den / fps;
-    audio_duration = 1024 * audio_st->time_base.den / audio_st->codec->sample_rate;
+    audio_duration = 1024LL * audio_st->time_base.den / audio_st->codec->sample_rate;
     if (audio_preroll)
-        audio_preroll = 2048 * audio_st->time_base.den / audio_st->codec->sample_rate;
+        audio_preroll = 2048LL * audio_st->time_base.den / audio_st->codec->sample_rate;
 
     bframes = bf;
     video_dts = bframes ? -duration : 0;
index b1196a2..2955233 100644 (file)
@@ -1,7 +1,7 @@
 4e7e78793cdda3c9ed28fbf47df39c43 2449 non-empty-moov
 5b825dc829f35c9d5b76834c378276d7 2897 non-empty-moov-elst
 0fd659671dec7d05cfa533a4579b1d6d 2817 non-empty-moov-no-elst
-890ad73874bff5aefbd549bc75a15b8e 9139 ismv
+845fdc9226a0e3f14e5f92219ce8f570 3871 ismv
 aa6f42a0546a27f7047f1cff812a552f 2327 empty-moov
 9a439649d13cdcddf6179234fe3d8a8e 2727 empty-moov-no-elst
 2451cb44e678845ed26e014e1affe5e8 2559 empty-moov-no-elst-no-adjust