diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2012-06-24 22:19:24 +0400 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2012-07-04 16:10:57 +0400 |
commit | 89b81a1c8841817fd3610396a33e6a1420a195ec (patch) | |
tree | 06a9f58143a78dd6d398f879d584ce04febdd3ac /libavcodec/mpegvideo.c | |
parent | 8c14f7a5937f05238e0e16da6ceccad8a86458ad (diff) |
mpegvideo: remove VLAs
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavcodec/mpegvideo.c')
-rw-r--r-- | libavcodec/mpegvideo.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index d1c42331c2..574893ed05 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -798,6 +798,11 @@ av_cold int ff_MPV_common_init(MpegEncContext *s) FF_ALLOCZ_OR_GOTO(s->avctx, s->dct_offset, 2 * 64 * sizeof(uint16_t), fail); } + + FF_ALLOC_OR_GOTO(s->avctx, s->cplx_tab, + mb_array_size * sizeof(float), fail); + FF_ALLOC_OR_GOTO(s->avctx, s->bits_tab, + mb_array_size * sizeof(float), fail); } } @@ -809,6 +814,8 @@ av_cold int ff_MPV_common_init(MpegEncContext *s) } if (s->width && s->height) { + FF_ALLOC_OR_GOTO(s->avctx, s->er_temp_buffer, + mb_array_size * sizeof(uint8_t), fail); FF_ALLOCZ_OR_GOTO(s->avctx, s->error_status_table, mb_array_size * sizeof(uint8_t), fail); @@ -974,6 +981,7 @@ void ff_MPV_common_end(MpegEncContext *s) av_freep(&s->avctx->stats_out); av_freep(&s->ac_stats); av_freep(&s->error_status_table); + av_freep(&s->er_temp_buffer); av_freep(&s->mb_index2xy); av_freep(&s->lambda_table); av_freep(&s->q_intra_matrix); @@ -983,6 +991,8 @@ void ff_MPV_common_end(MpegEncContext *s) av_freep(&s->input_picture); av_freep(&s->reordered_input_picture); av_freep(&s->dct_offset); + av_freep(&s->cplx_tab); + av_freep(&s->bits_tab); if (s->picture && !s->avctx->internal->is_copy) { for (i = 0; i < s->picture_count; i++) { |