Message ID | 20191127104651.20314-2-lance.lmwang@gmail.com |
---|---|
State | Accepted |
Commit | 3a6ec10d904f5f9d38900a79281000ca1d0a0747 |
Headers | show |
lgtm On 11/27/19, lance.lmwang@gmail.com <lance.lmwang@gmail.com> wrote: > From: Limin Wang <lance.lmwang@gmail.com> > > Signed-off-by: Limin Wang <lance.lmwang@gmail.com> > --- > libavfilter/vf_colorconstancy.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/libavfilter/vf_colorconstancy.c > b/libavfilter/vf_colorconstancy.c > index cc081e957f..9917d8993e 100644 > --- a/libavfilter/vf_colorconstancy.c > +++ b/libavfilter/vf_colorconstancy.c > @@ -682,13 +682,16 @@ static int filter_frame(AVFilterLink *inlink, AVFrame > *in) > AVFilterLink *outlink = ctx->outputs[0]; > AVFrame *out; > int ret; > + int direct = 0; > > ret = illumination_estimation(ctx, in); > if (ret) { > + av_frame_free(&in); > return ret; > } > > if (av_frame_is_writable(in)) { > + direct = 1; > out = in; > } else { > out = ff_get_video_buffer(outlink, outlink->w, outlink->h); > @@ -700,6 +703,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame > *in) > } > chromatic_adaptation(ctx, in, out); > > + if (!direct) > + av_frame_free(&in); > + > return ff_filter_frame(outlink, out); > } > > -- > 2.21.0 > > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email > ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
On Wed, Nov 27, 2019 at 11:47:54AM +0100, Paul B Mahol wrote:
> lgtm
will apply
thx
[...]
diff --git a/libavfilter/vf_colorconstancy.c b/libavfilter/vf_colorconstancy.c index cc081e957f..9917d8993e 100644 --- a/libavfilter/vf_colorconstancy.c +++ b/libavfilter/vf_colorconstancy.c @@ -682,13 +682,16 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) AVFilterLink *outlink = ctx->outputs[0]; AVFrame *out; int ret; + int direct = 0; ret = illumination_estimation(ctx, in); if (ret) { + av_frame_free(&in); return ret; } if (av_frame_is_writable(in)) { + direct = 1; out = in; } else { out = ff_get_video_buffer(outlink, outlink->w, outlink->h); @@ -700,6 +703,9 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) } chromatic_adaptation(ctx, in, out); + if (!direct) + av_frame_free(&in); + return ff_filter_frame(outlink, out); }