]> git.sesse.net Git - vlc/commitdiff
demux: ogg: vorbis birates are signed.
authorFrancois Cartegnie <fcvlcdev@free.fr>
Mon, 6 Jan 2014 20:07:36 +0000 (21:07 +0100)
committerFrancois Cartegnie <fcvlcdev@free.fr>
Mon, 6 Jan 2014 20:07:36 +0000 (21:07 +0100)
Negative being meaningless.

modules/demux/ogg.c

index e589679cd85b6609a142f1a33c7d4e6c12e5a6ca..9c858c861123532cfd9a62e3210f5f2ba25e7452 100644 (file)
@@ -2350,7 +2350,8 @@ static void Ogg_ReadVorbisHeader( logical_stream_t *p_stream,
     p_stream->f_rate = p_stream->fmt.audio.i_rate =
         oggpack_read( &opb, 32 );
     oggpack_adv( &opb, 32 );
-    p_stream->fmt.i_bitrate = oggpack_read( &opb, 32 );
+    p_stream->fmt.i_bitrate = oggpack_read( &opb, 32 ); /* is signed 32 */
+    if( p_stream->fmt.i_bitrate > INT32_MAX ) p_stream->fmt.i_bitrate = 0;
 }
 
 static void Ogg_ReadSpeexHeader( logical_stream_t *p_stream,