diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-07-01 03:50:17 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-07-01 04:45:10 +0200 |
commit | 31b1589097cd1934fd493e19bfc28d7aaaa478c6 (patch) | |
tree | c5b7ffa0cdd4283be8f151627377ddefbb089961 | |
parent | 97ccf31ecebc1bc22fe32e6a2bec8e1939d465e5 (diff) | |
download | ffmpeg-31b1589097cd1934fd493e19bfc28d7aaaa478c6.tar.gz |
avcodec/hevc: Use av_malloc(z)_array()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 7faa7d3d42af12a60a4db7ecba165369ec5795d7)
Conflicts:
libavcodec/hevc.c
-rw-r--r-- | libavcodec/hevc.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index f27eddbdc5..ff42d6e5d3 100644 --- a/libavcodec/hevc.c +++ b/libavcodec/hevc.c @@ -105,24 +105,26 @@ static int pic_arrays_init(HEVCContext *s) goto fail; s->skip_flag = av_malloc(pic_size_in_ctb); - s->tab_ct_depth = av_malloc(s->sps->min_cb_height * s->sps->min_cb_width); + s->tab_ct_depth = av_malloc_array(s->sps->min_cb_height, s->sps->min_cb_width); if (!s->skip_flag || !s->tab_ct_depth) goto fail; s->tab_ipm = av_mallocz(pic_size_in_min_pu); - s->cbf_luma = av_malloc(pic_width_in_min_tu * pic_height_in_min_tu); + s->cbf_luma = av_malloc_array(pic_width_in_min_tu, pic_height_in_min_tu); s->is_pcm = av_malloc(pic_size_in_min_pu); if (!s->tab_ipm || !s->cbf_luma || !s->is_pcm) goto fail; s->filter_slice_edges = av_malloc(ctb_count); - s->tab_slice_address = av_malloc(pic_size_in_ctb * sizeof(*s->tab_slice_address)); - s->qp_y_tab = av_malloc(pic_size_in_ctb * sizeof(*s->qp_y_tab)); + s->tab_slice_address = av_malloc_array(pic_size_in_ctb, + sizeof(*s->tab_slice_address)); + s->qp_y_tab = av_malloc_array(pic_size_in_ctb, + sizeof(*s->qp_y_tab)); if (!s->qp_y_tab || !s->filter_slice_edges || !s->tab_slice_address) goto fail; - s->horizontal_bs = av_mallocz(2 * s->bs_width * (s->bs_height + 1)); - s->vertical_bs = av_mallocz(2 * s->bs_width * (s->bs_height + 1)); + s->horizontal_bs = av_mallocz_array(2 * s->bs_width, (s->bs_height + 1)); + s->vertical_bs = av_mallocz_array(2 * s->bs_width, (s->bs_height + 1)); if (!s->horizontal_bs || !s->vertical_bs) goto fail; @@ -599,9 +601,9 @@ static int hls_slice_header(HEVCContext *s) av_freep(&sh->entry_point_offset); av_freep(&sh->offset); av_freep(&sh->size); - sh->entry_point_offset = av_malloc(sh->num_entry_point_offsets * sizeof(int)); - sh->offset = av_malloc(sh->num_entry_point_offsets * sizeof(int)); - sh->size = av_malloc(sh->num_entry_point_offsets * sizeof(int)); + sh->entry_point_offset = av_malloc_array(sh->num_entry_point_offsets, sizeof(int)); + sh->offset = av_malloc_array(sh->num_entry_point_offsets, sizeof(int)); + sh->size = av_malloc_array(sh->num_entry_point_offsets, sizeof(int)); if (!sh->entry_point_offset || !sh->offset || !sh->size) { sh->num_entry_point_offsets = 0; av_log(s->avctx, AV_LOG_ERROR, "Failed to allocate memory\n"); @@ -1976,8 +1978,8 @@ static int hls_decode_entry_wpp(AVCodecContext *avctxt, void *input_ctb_row, int static int hls_slice_data_wpp(HEVCContext *s, const uint8_t *nal, int length) { HEVCLocalContext *lc = s->HEVClc; - int *ret = av_malloc((s->sh.num_entry_point_offsets + 1) * sizeof(int)); - int *arg = av_malloc((s->sh.num_entry_point_offsets + 1) * sizeof(int)); + int *ret = av_malloc_array(s->sh.num_entry_point_offsets + 1, sizeof(int)); + int *arg = av_malloc_array(s->sh.num_entry_point_offsets + 1, sizeof(int)); int offset; int startheader, cmpt = 0; int i, j, res = 0; |