diff options
author | Clément Bœsch <ubitux@gmail.com> | 2013-03-15 02:58:29 +0100 |
---|---|---|
committer | Clément Bœsch <ubitux@gmail.com> | 2013-03-15 02:58:29 +0100 |
commit | 1edbeb353222acd204934043cfde9933c173b100 (patch) | |
tree | baf4eeaf4dbaca7ebab344bf1b94643e57d75790 | |
parent | db670e536632b62578b5041a69e9f0accacb4529 (diff) | |
download | ffmpeg-1edbeb353222acd204934043cfde9933c173b100.tar.gz |
lavfi/ebur128: check histogram allocations.
-rw-r--r-- | libavfilter/f_ebur128.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavfilter/f_ebur128.c b/libavfilter/f_ebur128.c index 33cea40d66..6d7f7afa83 100644 --- a/libavfilter/f_ebur128.c +++ b/libavfilter/f_ebur128.c @@ -373,6 +373,8 @@ static struct hist_entry *get_histogram(void) int i; struct hist_entry *h = av_calloc(HIST_SIZE, sizeof(*h)); + if (!h) + return NULL; for (i = 0; i < HIST_SIZE; i++) { h[i].loudness = i / (double)HIST_GRAIN + ABS_THRES; h[i].energy = ENERGY(h[i].loudness); @@ -406,6 +408,8 @@ static av_cold int init(AVFilterContext *ctx, const char *args) ebur128->i400.histogram = get_histogram(); ebur128->i3000.histogram = get_histogram(); + if (!ebur128->i400.histogram || !ebur128->i3000.histogram) + return AVERROR(ENOMEM); ebur128->integrated_loudness = ABS_THRES; ebur128->loudness_range = 0; |