libavcodec/rv34.c:1226: error: Buffer Overrun L2
  Offset: [1, 16843009] Size: 108 by call to `rv34_decode_block`.

libavcodec/rv34.c:1191:5: Call
1189.     // Calculate which neighbours are available. Maybe it's worth optimizing too.
1190.     memset(r->avail_cache, 0, sizeof(r->avail_cache));
1191.     fill_rectangle(r->avail_cache + 6, 2, 2, 4, 1, 4);
          ^
1192.     dist = (s->mb_x - s->resync_mb_x) + (s->mb_y - s->resync_mb_y) * s->mb_width;
1193.     if(s->mb_x && dist)

libavcodec/rectangle.h:42:1: Parameter `val`
  40.  * @param size the size of val (1, 2 or 4), should be a constant
  41.  */
  42. static av_always_inline void fill_rectangle(void *vp, int w, int h, int stride, uint32_t val, int size){
      ^
  43.     uint8_t *p= (uint8_t*)vp;
  44.     assert(size==1 || size==2 || size==4);

libavcodec/rectangle.h:109:9: Assignment
  107.         *(uint32_t*)(p + 4+1*stride)= val;
  108.         *(uint32_t*)(p + 8+1*stride)= val;
  109.         *(uint32_t*)(p +12+1*stride)= val;
               ^
  110.         if(h==2) return;
  111.         *(uint32_t*)(p + 0+2*stride)= val;

libavcodec/rv34.c:1226:13: Call
1224.         q_dc = rv34_qscale_tab[ r->luma_dc_quant_p[s->qscale] ];
1225.         q_ac = rv34_qscale_tab[s->qscale];
1226.         if (rv34_decode_block(block16, gb, r->cur_vlcs, 3, 0, q_dc, q_dc, q_ac))
                  ^
1227.             r->rdsp.rv34_inv_transform(block16);
1228.         else

libavcodec/rv34.c:285:1: Parameter `(*rvlc->second_pattern[*].table)[*]`
  283.  */
  284. 
  285. static int rv34_decode_block(DCTELEM *dst, GetBitContext *gb, RV34VLC *rvlc, int fc, int sc, int q_dc, int q_ac1, int q_ac2)
       ^
  286. {
  287.     int code, pattern, has_ac = 1;

libavcodec/rv34.c:305:16: Call
  303. 
  304.     if(pattern & 4){
  305.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
                      ^
  306.         decode_subblock(dst + 4*0+2, code, 0, gb, &rvlc->coefficient, q_ac2);
  307.     }

libavcodec/get_bits.h:473:1: Parameter `(*table)[*]`
    471.  *                  = (max_vlc_length + bits - 1) / bits
    472.  */
    473. static av_always_inline int get_vlc2(GetBitContext *s, VLC_TYPE (*table)[2],
         ^
    474.                                      int bits, int max_depth)
    475. {

libavcodec/get_bits.h:481:5: Assignment
    479.     UPDATE_CACHE(re, s);
    480. 
    481.     GET_VLC(code, re, s, table, bits, max_depth);
             ^
    482. 
    483.     CLOSE_READER(re, s);

libavcodec/get_bits.h:484:5: Assignment
    482. 
    483.     CLOSE_READER(re, s);
    484.     return code;
             ^
    485. }
    486. 

libavcodec/rv34.c:305:9: Assignment
  303. 
  304.     if(pattern & 4){
  305.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
               ^
  306.         decode_subblock(dst + 4*0+2, code, 0, gb, &rvlc->coefficient, q_ac2);
  307.     }

libavcodec/rv34.c:306:9: Call
  304.     if(pattern & 4){
  305.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
  306.         decode_subblock(dst + 4*0+2, code, 0, gb, &rvlc->coefficient, q_ac2);
               ^
  307.     }
  308.     if(pattern & 2){ // Looks like coefficients 1 and 2 are swapped for this block

libavcodec/rv34.c:239:1: <Offset trace>
237.  * Decode 2x2 subblock of coefficients.
238.  */
239. static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc, int q)
     ^
240. {
241.     int flags = modulo_three_table[code];

libavcodec/rv34.c:239:1: Parameter `code`
    237.  * Decode 2x2 subblock of coefficients.
    238.  */
    239. static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc, int q)
         ^
    240. {
    241.     int flags = modulo_three_table[code];

libavcodec/rv34data.h:53:1: <Length trace>
51.  * This table allows conversion from a value back to a vector.
52.  */
53. static const uint8_t modulo_three_table[108] = {
    ^
54.     0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0A,
55.     0x10, 0x11, 0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1A,

libavcodec/rv34data.h:53:1: Array declaration
    51.  * This table allows conversion from a value back to a vector.
    52.  */
    53. static const uint8_t modulo_three_table[108] = {
        ^
    54.     0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x08, 0x09, 0x0A,
    55.     0x10, 0x11, 0x12, 0x14, 0x15, 0x16, 0x18, 0x19, 0x1A,

libavcodec/rv34.c:241:17: Array access: Offset: [1, 16843009] Size: 108 by call to `rv34_decode_block` 
    239. static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc, int q)
    240. {
    241.     int flags = modulo_three_table[code];
                         ^
    242. 
    243.     decode_coeff(    dst+0*4+0, (flags >> 6)    , 3, gb, vlc, q);
