From: Ramiro Polla Date: Sat, 12 Sep 2009 17:22:56 +0000 (+0000) Subject: Check for return value of some context allocations. X-Git-Tag: v0.6~3367 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=7ef618796a6f4adf5bb16adce40ccacab0b232b6;p=coroid%2Flibav_saccubus.git Check for return value of some context allocations. Originally committed as revision 19826 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/ffmpeg.c b/ffmpeg.c index 3df78f9be..72546d873 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -483,6 +483,10 @@ static int read_ffserver_streams(AVFormatContext *s, const char *filename) st = av_mallocz(sizeof(AVStream)); memcpy(st, ic->streams[i], sizeof(AVStream)); st->codec = avcodec_alloc_context(); + if (!st->codec) { + print_error(filename, AVERROR(ENOMEM)); + av_exit(1); + } memcpy(st->codec, ic->streams[i]->codec, sizeof(AVCodecContext)); s->streams[i] = st; @@ -2836,6 +2840,10 @@ static void opt_input_file(const char *filename) /* get default parameters from command line */ ic = avformat_alloc_context(); + if (!ic) { + print_error(filename, AVERROR(ENOMEM)); + av_exit(1); + } memset(ap, 0, sizeof(*ap)); ap->prealloced_context = 1; @@ -3332,6 +3340,10 @@ static void opt_output_file(const char *filename) filename = "pipe:"; oc = avformat_alloc_context(); + if (!oc) { + print_error(filename, AVERROR(ENOMEM)); + av_exit(1); + } if (!file_oformat) { file_oformat = guess_format(NULL, filename, NULL);