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

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

libavcodec/rectangle.h:42:1: Parameter `val`
  40.  * @param size the size of val (1 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==4);

libavcodec/rectangle.h:91:9: Assignment
  89. #else
  90.         *(uint32_t*)(p + 0+0*stride)= val;
  91.         *(uint32_t*)(p + 4+0*stride)= val;
              ^
  92.         if(h==1) return;
  93.         *(uint32_t*)(p + 0+1*stride)= val;

libavcodec/rv34.c:1215:13: Call
1213.         blkoff = ((i & 1) << 2) + ((i & 4) << 3);
1214.         if(cbp & 1)
1215.             rv34_decode_block(s->block[blknum] + blkoff, gb, r->cur_vlcs, r->luma_vlc, 0);
                  ^
1216.         rv34_dequant4x4(s->block[blknum] + blkoff, rv34_qscale_tab[s->qscale],rv34_qscale_tab[s->qscale]);
1217.         if(r->is16) //FIXME: optimize

libavcodec/rv34.c:333:1: Parameter `(*rvlc->second_pattern[*].table)[*]`
  331.  */
  332. 
  333. static inline void rv34_decode_block(DCTELEM *dst, GetBitContext *gb, RV34VLC *rvlc, int fc, int sc)
       ^
  334. {
  335.     int code, pattern;

libavcodec/rv34.c:345:16: Call
  343. 
  344.     if(pattern & 4){
  345.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
                      ^
  346.         decode_subblock(dst + 2, code, 0, gb, &rvlc->coefficient);
  347.     }

libavcodec/get_bits.h:622:1: Parameter `(*table)[*]`
    620.  *                  = (max_vlc_length + bits - 1) / bits
    621.  */
    622. static av_always_inline int get_vlc2(GetBitContext *s, VLC_TYPE (*table)[2],
         ^
    623.                                   int bits, int max_depth)
    624. {

libavcodec/get_bits.h:630:5: Assignment
    628.     UPDATE_CACHE(re, s)
    629. 
    630.     GET_VLC(code, re, s, table, bits, max_depth)
             ^
    631. 
    632.     CLOSE_READER(re, s)

libavcodec/get_bits.h:633:5: Assignment
    631. 
    632.     CLOSE_READER(re, s)
    633.     return code;
             ^
    634. }
    635. 

libavcodec/rv34.c:345:9: Assignment
  343. 
  344.     if(pattern & 4){
  345.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
               ^
  346.         decode_subblock(dst + 2, code, 0, gb, &rvlc->coefficient);
  347.     }

libavcodec/rv34.c:346:9: Call
  344.     if(pattern & 4){
  345.         code = get_vlc2(gb, rvlc->second_pattern[sc].table, 9, 2);
  346.         decode_subblock(dst + 2, code, 0, gb, &rvlc->coefficient);
               ^
  347.     }
  348.     if(pattern & 2){ // Looks like coefficients 1 and 2 are swapped for this block

libavcodec/rv34.c:303:1: <Offset trace>
301.  * Decode 2x2 subblock of coefficients.
302.  */
303. static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc)
     ^
304. {
305.     int coeffs[4];

libavcodec/rv34.c:303:1: Parameter `code`
    301.  * Decode 2x2 subblock of coefficients.
    302.  */
    303. static inline void decode_subblock(DCTELEM *dst, int code, const int is_block2, GetBitContext *gb, VLC *vlc)
         ^
    304. {
    305.     int coeffs[4];

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][4] = {
    ^
54.  { 0, 0, 0, 0 }, { 0, 0, 0, 1 }, { 0, 0, 0, 2 }, { 0, 0, 1, 0 },
55.  { 0, 0, 1, 1 }, { 0, 0, 1, 2 }, { 0, 0, 2, 0 }, { 0, 0, 2, 1 },

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][4] = {
        ^
    54.  { 0, 0, 0, 0 }, { 0, 0, 0, 1 }, { 0, 0, 0, 2 }, { 0, 0, 1, 0 },
    55.  { 0, 0, 1, 1 }, { 0, 0, 1, 2 }, { 0, 0, 2, 0 }, { 0, 0, 2, 1 },

libavcodec/rv34.c:307:17: Array access: Offset: [1, 16843009] Size: 108 by call to `rv34_decode_block` 
    305.     int coeffs[4];
    306. 
    307.     coeffs[0] = modulo_three_table[code][0];
                         ^
    308.     coeffs[1] = modulo_three_table[code][1];
    309.     coeffs[2] = modulo_three_table[code][2];
