On Tue, Jun 02, 2020 at 11:26:58PM +0800, lance.lmw...@gmail.com wrote: > From: Limin Wang <lance.lmw...@gmail.com> > > Nicolas George comments for the macros: > These functions have a terrible design, let us fix them before extending > them. > First design mistake: no error code. A helper function for testing > memory allocation failure where AVERROR(ENOMEM) does not appear is > absurd. > > Second design mistake: printing a message. Return the error code, let > the caller print the error message. > > Third design mistake: hard-coded use of goto. > > http://ffmpeg.org/pipermail/ffmpeg-devel/2020-May/262544.html > > Signed-off-by: Limin Wang <lance.lmw...@gmail.com> > --- > libavutil/internal.h | 36 ------------------------------------ > 1 file changed, 36 deletions(-) > > diff --git a/libavutil/internal.h b/libavutil/internal.h > index 00f1a57..b87cc6d 100644 > --- a/libavutil/internal.h > +++ b/libavutil/internal.h > @@ -140,42 +140,6 @@ > #define FF_ALLOC_TYPED_ARRAY(p, nelem) (p = av_malloc_array(nelem, > sizeof(*p))) > #define FF_ALLOCZ_TYPED_ARRAY(p, nelem) (p = av_mallocz_array(nelem, > sizeof(*p))) > > -#define FF_ALLOC_OR_GOTO(ctx, p, size, label)\ > -{\ > - p = av_malloc(size);\ > - if (!(p) && (size) != 0) {\ > - av_log(ctx, AV_LOG_ERROR, "Cannot allocate memory.\n");\ > - goto label;\ > - }\ > -} > - > -#define FF_ALLOCZ_OR_GOTO(ctx, p, size, label)\ > -{\ > - p = av_mallocz(size);\ > - if (!(p) && (size) != 0) {\ > - av_log(ctx, AV_LOG_ERROR, "Cannot allocate memory.\n");\ > - goto label;\ > - }\ > -} > - > -#define FF_ALLOC_ARRAY_OR_GOTO(ctx, p, nelem, elsize, label)\ > -{\ > - p = av_malloc_array(nelem, elsize);\ > - if (!p) {\ > - av_log(ctx, AV_LOG_ERROR, "Cannot allocate memory.\n");\ > - goto label;\ > - }\ > -} > - > -#define FF_ALLOCZ_ARRAY_OR_GOTO(ctx, p, nelem, elsize, label)\ > -{\ > - p = av_mallocz_array(nelem, elsize);\ > - if (!p) {\ > - av_log(ctx, AV_LOG_ERROR, "Cannot allocate memory.\n");\ > - goto label;\ > - }\ > -} > - > #include "libm.h" > > /** > -- > 1.8.3.1 >
I'll apply the patch set in next two days if no further comments still. Please help to review if you think it's necessary. -- Thanks, Limin Wang _______________________________________________ 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".