summaryrefslogtreecommitdiff
path: root/libavcodec/bitstream_filter.c
diff options
context:
space:
mode:
authorVittorio Giovara <vittorio.giovara@gmail.com>2014-12-18 20:26:56 +0100
committerVittorio Giovara <vittorio.giovara@gmail.com>2015-01-15 01:25:16 +0100
commit8a9641a652ed1546fedfda22584f79d3d423096e (patch)
treec5f13c56aaadf20cece2188e509b430f6ea3061b /libavcodec/bitstream_filter.c
parent014b6b416fec89777cb9cff61bcf7896eaf7cf39 (diff)
bsf: check memory allocations
Diffstat (limited to 'libavcodec/bitstream_filter.c')
-rw-r--r--libavcodec/bitstream_filter.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/libavcodec/bitstream_filter.c b/libavcodec/bitstream_filter.c
index f524d3ef8d..3b19bbdc76 100644
--- a/libavcodec/bitstream_filter.c
+++ b/libavcodec/bitstream_filter.c
@@ -47,9 +47,17 @@ AVBitStreamFilterContext *av_bitstream_filter_init(const char *name)
if (!strcmp(name, bsf->name)) {
AVBitStreamFilterContext *bsfc =
av_mallocz(sizeof(AVBitStreamFilterContext));
+ if (!bsfc)
+ return NULL;
bsfc->filter = bsf;
- bsfc->priv_data =
- bsf->priv_data_size ? av_mallocz(bsf->priv_data_size) : NULL;
+ bsfc->priv_data = NULL;
+ if (bsf->priv_data_size) {
+ bsfc->priv_data = av_mallocz(bsf->priv_data_size);
+ if (!bsfc->priv_data) {
+ av_freep(&bsfc);
+ return NULL;
+ }
+ }
return bsfc;
}
bsf = bsf->next;