summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-01-30 00:42:48 +0100
committerMichael Niedermayer <michaelni@gmx.at>2015-01-30 00:44:51 +0100
commit2b215b7f5af0ef9be79c697d8990e6958a134f98 (patch)
tree985756a4c79cbac48193d9fa30bef3cae51dc2a2
parent5008605bf25c78f13a4d6c422e8c35d88254d996 (diff)
avcodec/hevc: Check for av_malloc failure
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/hevc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c
index 036425ecb8..7db32f79a7 100644
--- a/libavcodec/hevc.c
+++ b/libavcodec/hevc.c
@@ -2398,6 +2398,12 @@ static int hls_slice_data_wpp(HEVCContext *s, const uint8_t *nal, int length)
int startheader, cmpt = 0;
int i, j, res = 0;
+ if (!ret || !arg) {
+ av_free(ret);
+ av_free(arg);
+ return AVERROR(ENOMEM);
+ }
+
if (!s->sList[1]) {
ff_alloc_entries(s->avctx, s->sh.num_entry_point_offsets + 1);
@@ -2933,6 +2939,8 @@ static int decode_nal_units(HEVCContext *s, const uint8_t *buf, int length)
s->skipped_bytes_pos_size_nal[s->nals_allocated] = 1024; // initial buffer size
s->skipped_bytes_pos_nal[s->nals_allocated] = av_malloc_array(s->skipped_bytes_pos_size_nal[s->nals_allocated], sizeof(*s->skipped_bytes_pos));
+ if (!s->skipped_bytes_pos_nal[s->nals_allocated])
+ goto fail;
s->nals_allocated = new_size;
}
s->skipped_bytes_pos_size = s->skipped_bytes_pos_size_nal[s->nb_nals];