libavcodec/dv.c:179: error: Uninitialized Value
  The value read from new_dv_vlc_run[_] was never initialized.

libavcodec/dv.c:179:17: 
177.                 level = code;
178.             } else {
179.                 run   = new_dv_vlc_run  [code] + 1;
                     ^
180.                 level = new_dv_vlc_level[code];
181.             }

static av_cold int dvvideo_init(AVCodecContext *avctx)
{
    DVVideoContext *s = avctx->priv_data;
    DSPContext dsp;
    static int done = 0;
    int i, j;
    if (!done) {
        VLC dv_vlc;
        uint16_t new_dv_vlc_bits[NB_DV_VLC*2];
        uint8_t  new_dv_vlc_len[NB_DV_VLC*2];
        uint8_t  new_dv_vlc_run[NB_DV_VLC*2];
        int16_t  new_dv_vlc_level[NB_DV_VLC*2];
        done = 1;
        for (i = 0; i < DV_ANCHOR_SIZE; i++)
            dv_anchor[i] = (void*)(size_t)i;
        for (i = 0, j = 0; i < NB_DV_VLC; i++, j++) {
            new_dv_vlc_bits[j]  = dv_vlc_bits[i];
            new_dv_vlc_len[j]   = dv_vlc_len[i];
            new_dv_vlc_run[j]   = dv_vlc_run[i];
            new_dv_vlc_level[j] = dv_vlc_level[i];
            if (dv_vlc_level[i]) {
                new_dv_vlc_bits[j] <<= 1;
                new_dv_vlc_len[j]++;
                j++;
                new_dv_vlc_bits[j]  = (dv_vlc_bits[i] << 1) | 1;
                new_dv_vlc_len[j]   =  dv_vlc_len[i] + 1;
                new_dv_vlc_run[j]   =  dv_vlc_run[i];
                new_dv_vlc_level[j] = -dv_vlc_level[i];
            }
        }
        init_vlc(&dv_vlc, TEX_VLC_BITS, j,
                 new_dv_vlc_len, 1, 1, new_dv_vlc_bits, 2, 2, 0);
        assert(dv_vlc.table_size == 1184);
        for (i = 0; i < dv_vlc.table_size; i++){
            int code = dv_vlc.table[i][0];
            int len  = dv_vlc.table[i][1];
            int level, run;
            if (len < 0){
                run   = 0;
                level = code;
            } else {
                run   = new_dv_vlc_run  [code] + 1;
                level = new_dv_vlc_level[code];
            }
            dv_rl_vlc[i].len   = len;
            dv_rl_vlc[i].level = level;
            dv_rl_vlc[i].run   = run;
        }
        free_vlc(&dv_vlc);
        for (i = 0; i < NB_DV_VLC - 1; i++) {
           if (dv_vlc_run[i] >= DV_VLC_MAP_RUN_SIZE)
               continue;
#ifdef DV_CODEC_TINY_TARGET
           if (dv_vlc_level[i] >= DV_VLC_MAP_LEV_SIZE)
               continue;
#endif
           if (dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].size != 0)
               continue;
           dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].vlc  =
               dv_vlc_bits[i] << (!!dv_vlc_level[i]);
           dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].size =
               dv_vlc_len[i] + (!!dv_vlc_level[i]);
        }
        for (i = 0; i < DV_VLC_MAP_RUN_SIZE; i++) {
#ifdef DV_CODEC_TINY_TARGET
           for (j = 1; j < DV_VLC_MAP_LEV_SIZE; j++) {
              if (dv_vlc_map[i][j].size == 0) {
                  dv_vlc_map[i][j].vlc = dv_vlc_map[0][j].vlc |
                            (dv_vlc_map[i-1][0].vlc << (dv_vlc_map[0][j].size));
                  dv_vlc_map[i][j].size = dv_vlc_map[i-1][0].size +
                                          dv_vlc_map[0][j].size;
              }
           }
#else
           for (j = 1; j < DV_VLC_MAP_LEV_SIZE/2; j++) {
              if (dv_vlc_map[i][j].size == 0) {
                  dv_vlc_map[i][j].vlc = dv_vlc_map[0][j].vlc |
                            (dv_vlc_map[i-1][0].vlc << (dv_vlc_map[0][j].size));
                  dv_vlc_map[i][j].size = dv_vlc_map[i-1][0].size +
                                          dv_vlc_map[0][j].size;
              }
              dv_vlc_map[i][((uint16_t)(-j))&0x1ff].vlc =
                                            dv_vlc_map[i][j].vlc | 1;
              dv_vlc_map[i][((uint16_t)(-j))&0x1ff].size =
                                            dv_vlc_map[i][j].size;
           }
#endif
        }
    }
    dsputil_init(&dsp, avctx);
    s->get_pixels = dsp.get_pixels;
    s->fdct[0]     = dsp.fdct;
    s->idct_put[0] = dsp.idct_put;
    for (i = 0; i < 64; i++)
       s->dv_zigzag[0][i] = dsp.idct_permutation[ff_zigzag_direct[i]];
    s->fdct[1]     = dsp.fdct248;
    s->idct_put[1] = ff_simple_idct248_put;
    if (avctx->lowres){
        for (i = 0; i < 64; i++){
            int j = ff_zigzag248_direct[i];
            s->dv_zigzag[1][i] = dsp.idct_permutation[(j & 7) + (j & 8) * 4 + (j & 48) / 2];
        }
    }else
        memcpy(s->dv_zigzag[1], ff_zigzag248_direct, 64);
    dv_build_unquantize_tables(s, dsp.idct_permutation);
    avctx->coded_frame = &s->picture;
    s->avctx = avctx;
    return 0;
}
['static av_cold int dvvideo_init(AVCodecContext *avctx)\n{\n    DVVideoContext *s = avctx->priv_data;\n    DSPContext dsp;\n    static int done = 0;\n    int i, j;\n    if (!done) {\n        VLC dv_vlc;\n        uint16_t new_dv_vlc_bits[NB_DV_VLC*2];\n        uint8_t  new_dv_vlc_len[NB_DV_VLC*2];\n        uint8_t  new_dv_vlc_run[NB_DV_VLC*2];\n        int16_t  new_dv_vlc_level[NB_DV_VLC*2];\n        done = 1;\n        for (i = 0; i < DV_ANCHOR_SIZE; i++)\n            dv_anchor[i] = (void*)(size_t)i;\n        for (i = 0, j = 0; i < NB_DV_VLC; i++, j++) {\n            new_dv_vlc_bits[j]  = dv_vlc_bits[i];\n            new_dv_vlc_len[j]   = dv_vlc_len[i];\n            new_dv_vlc_run[j]   = dv_vlc_run[i];\n            new_dv_vlc_level[j] = dv_vlc_level[i];\n            if (dv_vlc_level[i]) {\n                new_dv_vlc_bits[j] <<= 1;\n                new_dv_vlc_len[j]++;\n                j++;\n                new_dv_vlc_bits[j]  = (dv_vlc_bits[i] << 1) | 1;\n                new_dv_vlc_len[j]   =  dv_vlc_len[i] + 1;\n                new_dv_vlc_run[j]   =  dv_vlc_run[i];\n                new_dv_vlc_level[j] = -dv_vlc_level[i];\n            }\n        }\n        init_vlc(&dv_vlc, TEX_VLC_BITS, j,\n                 new_dv_vlc_len, 1, 1, new_dv_vlc_bits, 2, 2, 0);\n        assert(dv_vlc.table_size == 1184);\n        for (i = 0; i < dv_vlc.table_size; i++){\n            int code = dv_vlc.table[i][0];\n            int len  = dv_vlc.table[i][1];\n            int level, run;\n            if (len < 0){\n                run   = 0;\n                level = code;\n            } else {\n                run   = new_dv_vlc_run  [code] + 1;\n                level = new_dv_vlc_level[code];\n            }\n            dv_rl_vlc[i].len   = len;\n            dv_rl_vlc[i].level = level;\n            dv_rl_vlc[i].run   = run;\n        }\n        free_vlc(&dv_vlc);\n        for (i = 0; i < NB_DV_VLC - 1; i++) {\n           if (dv_vlc_run[i] >= DV_VLC_MAP_RUN_SIZE)\n               continue;\n#ifdef DV_CODEC_TINY_TARGET\n           if (dv_vlc_level[i] >= DV_VLC_MAP_LEV_SIZE)\n               continue;\n#endif\n           if (dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].size != 0)\n               continue;\n           dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].vlc  =\n               dv_vlc_bits[i] << (!!dv_vlc_level[i]);\n           dv_vlc_map[dv_vlc_run[i]][dv_vlc_level[i]].size =\n               dv_vlc_len[i] + (!!dv_vlc_level[i]);\n        }\n        for (i = 0; i < DV_VLC_MAP_RUN_SIZE; i++) {\n#ifdef DV_CODEC_TINY_TARGET\n           for (j = 1; j < DV_VLC_MAP_LEV_SIZE; j++) {\n              if (dv_vlc_map[i][j].size == 0) {\n                  dv_vlc_map[i][j].vlc = dv_vlc_map[0][j].vlc |\n                            (dv_vlc_map[i-1][0].vlc << (dv_vlc_map[0][j].size));\n                  dv_vlc_map[i][j].size = dv_vlc_map[i-1][0].size +\n                                          dv_vlc_map[0][j].size;\n              }\n           }\n#else\n           for (j = 1; j < DV_VLC_MAP_LEV_SIZE/2; j++) {\n              if (dv_vlc_map[i][j].size == 0) {\n                  dv_vlc_map[i][j].vlc = dv_vlc_map[0][j].vlc |\n                            (dv_vlc_map[i-1][0].vlc << (dv_vlc_map[0][j].size));\n                  dv_vlc_map[i][j].size = dv_vlc_map[i-1][0].size +\n                                          dv_vlc_map[0][j].size;\n              }\n              dv_vlc_map[i][((uint16_t)(-j))&0x1ff].vlc =\n                                            dv_vlc_map[i][j].vlc | 1;\n              dv_vlc_map[i][((uint16_t)(-j))&0x1ff].size =\n                                            dv_vlc_map[i][j].size;\n           }\n#endif\n        }\n    }\n    dsputil_init(&dsp, avctx);\n    s->get_pixels = dsp.get_pixels;\n    s->fdct[0]     = dsp.fdct;\n    s->idct_put[0] = dsp.idct_put;\n    for (i = 0; i < 64; i++)\n       s->dv_zigzag[0][i] = dsp.idct_permutation[ff_zigzag_direct[i]];\n    s->fdct[1]     = dsp.fdct248;\n    s->idct_put[1] = ff_simple_idct248_put;\n    if (avctx->lowres){\n        for (i = 0; i < 64; i++){\n            int j = ff_zigzag248_direct[i];\n            s->dv_zigzag[1][i] = dsp.idct_permutation[(j & 7) + (j & 8) * 4 + (j & 48) / 2];\n        }\n    }else\n        memcpy(s->dv_zigzag[1], ff_zigzag248_direct, 64);\n    dv_build_unquantize_tables(s, dsp.idct_permutation);\n    avctx->coded_frame = &s->picture;\n    s->avctx = avctx;\n    return 0;\n}']