Andreas Rheinhardt: > This is designed to improve and unify error handling for > allocation failures for the many (often small) allocations that we have > in the fftools. These typically either don't return an error message > or an error message that is not really helpful to the user > and can be replaced by a generic error message without loss of > information. > > Reviewed-by: James Almer <jamr...@gmail.com> > Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> > --- > fftools/cmdutils.c | 6 ++++++ > fftools/cmdutils.h | 11 +++++++++++ > 2 files changed, 17 insertions(+) > > diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c > index 18e768b386..da3d391694 100644 > --- a/fftools/cmdutils.c > +++ b/fftools/cmdutils.c > @@ -90,6 +90,12 @@ void register_exit(void (*cb)(int ret)) > program_exit = cb; > } > > +void report_and_exit(int ret) > +{ > + av_log(NULL, AV_LOG_FATAL, "%s\n", av_err2str(ret)); > + exit_program(AVUNERROR(ret)); > +} > + > void exit_program(int ret) > { > if (program_exit) > diff --git a/fftools/cmdutils.h b/fftools/cmdutils.h > index d87e162ccd..4496221983 100644 > --- a/fftools/cmdutils.h > +++ b/fftools/cmdutils.h > @@ -54,6 +54,17 @@ extern int hide_banner; > */ > void register_exit(void (*cb)(int ret)); > > +/** > + * Reports an error corresponding to the provided > + * AVERROR code and calls exit_program() with the > + * corresponding POSIX error code. > + * @note ret must be an AVERROR-value of a POSIX error code > + * (i.e. AVERROR(EFOO) and not AVERROR_FOO). > + * library functions can return both, so call this only > + * with AVERROR(EFOO) of your own. > + */ > +void report_and_exit(int ret) av_noreturn; > + > /** > * Wraps exit with a program-specific cleanup routine. > */
Will apply tonight unless there are objections. - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".