OSDN Git Service

m4v_h263: add a test for invalid/negative value
authorDongwon Kang <dwkang@google.com>
Fri, 21 Jun 2019 21:17:58 +0000 (14:17 -0700)
committerJP Sugarbroad <jpsugar@google.com>
Wed, 7 Aug 2019 21:12:59 +0000 (14:12 -0700)
Test: run poc with and without the patch.
Bug: 134578122
Change-Id: I2d11826d1d9e2669aa5627065dc627729ddc823b
(cherry picked from commit 7802c68aebf7908983508fd4a52a7d53746a80eb)

media/libstagefright/codecs/m4v_h263/dec/src/packet_util.cpp

index 48414d7..5880e32 100644 (file)
@@ -52,7 +52,11 @@ PV_STATUS PV_ReadVideoPacketHeader(VideoDecData *video, int *next_MB)
         PV_BitstreamByteAlign(stream);
         BitstreamReadBits32(stream, resync_marker_length);
 
-        *next_MB = (int) BitstreamReadBits16(stream, nbits);
+        int mbnum = (int) BitstreamReadBits16(stream, nbits);
+        if (mbnum < 0) {
+            return PV_FAIL;
+        }
+        *next_MB = mbnum;
 //      if (*next_MB <= video->mbnum)   /*  needs more investigation */
 //          *next_MB = video->mbnum+1;