]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/dirac_arith.h
avcodec: Constify all the AVCodecParsers
[ffmpeg] / libavcodec / dirac_arith.h
index efe30b79debb76adf41636c0bc67eac9187c3c4f..350a58fca6b44beacd49309372a0bafa721c635b 100644 (file)
@@ -82,10 +82,10 @@ typedef struct {
 
     uint16_t contexts[DIRAC_CTX_COUNT];
     int error;
+    int overread;
 } DiracArith;
 
 extern const uint8_t ff_dirac_next_ctx[DIRAC_CTX_COUNT];
-extern const uint16_t ff_dirac_prob[256];
 extern int16_t ff_dirac_prob_branchless[256][2];
 
 static inline void renorm(DiracArith *c)
@@ -119,6 +119,9 @@ static inline void refill(DiracArith *c)
                 new |= 0xff00;
 
             c->bytestream = c->bytestream_end;
+            c->overread ++;
+            if (c->overread > 4)
+                c->error = AVERROR_INVALIDDATA;
         }
 
         c->low += new << counter;