You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	avfilter/af_aresample: Check ff_all_* for allocation failures
Fixes: signal_sigabrt_7ffff70eccc9_498_divx502.avi with memlimit 1572864 Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
		| @@ -87,15 +87,24 @@ static int query_formats(AVFilterContext *ctx) | ||||
|     AVFilterLink *inlink  = ctx->inputs[0]; | ||||
|     AVFilterLink *outlink = ctx->outputs[0]; | ||||
|  | ||||
|     AVFilterFormats        *in_formats      = ff_all_formats(AVMEDIA_TYPE_AUDIO); | ||||
|     AVFilterFormats        *out_formats; | ||||
|     AVFilterFormats        *in_samplerates  = ff_all_samplerates(); | ||||
|     AVFilterFormats        *out_samplerates; | ||||
|     AVFilterChannelLayouts *in_layouts      = ff_all_channel_counts(); | ||||
|     AVFilterChannelLayouts *out_layouts; | ||||
|     AVFilterFormats        *in_formats, *out_formats; | ||||
|     AVFilterFormats        *in_samplerates, *out_samplerates; | ||||
|     AVFilterChannelLayouts *in_layouts, *out_layouts; | ||||
|  | ||||
|  | ||||
|     in_formats      = ff_all_formats(AVMEDIA_TYPE_AUDIO); | ||||
|     if (!in_formats) | ||||
|         return AVERROR(ENOMEM); | ||||
|     ff_formats_ref  (in_formats,      &inlink->out_formats); | ||||
|  | ||||
|     in_samplerates  = ff_all_samplerates(); | ||||
|     if (!in_samplerates) | ||||
|         return AVERROR(ENOMEM); | ||||
|     ff_formats_ref  (in_samplerates,  &inlink->out_samplerates); | ||||
|  | ||||
|     in_layouts      = ff_all_channel_counts(); | ||||
|     if (!in_layouts) | ||||
|          return AVERROR(ENOMEM); | ||||
|     ff_channel_layouts_ref(in_layouts,      &inlink->out_channel_layouts); | ||||
|  | ||||
|     if(out_rate > 0) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user