[FFmpeg-devel] [PATCH v2] avformat/rmdec.c: fix left shift of negative value in rm_sync()

James Almer jamrial at gmail.com
Sun Sep 15 16:02:08 EEST 2019


Fixes ticket 8143.

Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavformat/rmdec.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c
index c9abd38d33..e95cc9f858 100644
--- a/libavformat/rmdec.c
+++ b/libavformat/rmdec.c
@@ -724,8 +724,8 @@ static int rm_sync(AVFormatContext *s, int64_t *timestamp, int *flags, int *stre
 
             num = avio_rb16(pb);
             *timestamp = avio_rb32(pb);
-            mlti_id = (avio_r8(pb)>>1)-1<<16;
-            mlti_id = FFMAX(mlti_id, 0);
+            mlti_id = avio_r8((pb) >> 1) - 1;
+            mlti_id = FFMAX(mlti_id, 0) << 16;
             *flags = avio_r8(pb); /* flags */
         }
         for(i=0;i<s->nb_streams;i++) {
-- 
2.22.0



More information about the ffmpeg-devel mailing list