makes really sure that no undefined behavior can happen
authorAurelien Jacobs <aurel@gnuage.org>
Wed, 27 Feb 2008 00:53:34 +0000 (00:53 +0000)
committerAurelien Jacobs <aurel@gnuage.org>
Wed, 27 Feb 2008 00:53:34 +0000 (00:53 +0000)
Originally committed as revision 12258 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/matroskaenc.c

index 0927908..00818b5 100644 (file)
@@ -149,7 +149,7 @@ static void put_ebml_num(ByteIOContext *pb, uint64_t num, int bytes)
 static void put_ebml_uint(ByteIOContext *pb, unsigned int elementid, uint64_t val)
 {
     int i, bytes = 1;
-    while (val >> bytes*8 && bytes < 8) bytes++;
+    while (bytes < 8 && val >> bytes*8) bytes++;
 
     put_ebml_id(pb, elementid);
     put_ebml_num(pb, bytes, 0);