summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavfilter/vf_hwupload.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/libavfilter/vf_hwupload.c b/libavfilter/vf_hwupload.c
index 08af2dd49f..f54ce9faa7 100644
--- a/libavfilter/vf_hwupload.c
+++ b/libavfilter/vf_hwupload.c
@@ -74,17 +74,15 @@ static int hwupload_query_formats(AVFilterContext *avctx)
if (input_pix_fmts) {
for (i = 0; input_pix_fmts[i] != AV_PIX_FMT_NONE; i++) {
err = ff_add_format(&input_formats, input_pix_fmts[i]);
- if (err < 0) {
- ff_formats_unref(&input_formats);
+ if (err < 0)
goto fail;
- }
}
}
- ff_formats_ref(input_formats, &avctx->inputs[0]->out_formats);
-
- ff_formats_ref(ff_make_format_list(output_pix_fmts),
- &avctx->outputs[0]->in_formats);
+ if ((err = ff_formats_ref(input_formats, &avctx->inputs[0]->out_formats)) < 0 ||
+ (err = ff_formats_ref(ff_make_format_list(output_pix_fmts),
+ &avctx->outputs[0]->in_formats)) < 0)
+ goto fail;
av_hwframe_constraints_free(&constraints);
return 0;