[FFmpeg-devel] [PATCH] imgutils: introduce internal image_get_linesize() and use it
Michael Niedermayer
michaelni at gmx.at
Mon May 16 18:01:27 CEST 2011
On Mon, May 16, 2011 at 04:49:15PM +0200, Stefano Sabatini wrote:
> On date Monday 2011-05-16 02:44:53 +0200, Michael Niedermayer encoded:
> > On Sun, May 15, 2011 at 01:05:58PM +0200, Stefano Sabatini wrote:
> > > Allow to factorize code between av_image_get_linesize() and
> > > av_image_fill_linesizes().
> > > ---
> > > libavutil/imgutils.c | 37 ++++++++++++++++++++++---------------
> > > 1 files changed, 22 insertions(+), 15 deletions(-)
> > [...]
> > > @@ -74,15 +88,8 @@ int av_image_fill_linesizes(int linesizes[4], enum PixelFormat pix_fmt, int widt
> > > return AVERROR(EINVAL);
> > >
> > > av_image_fill_max_pixsteps(max_step, max_step_comp, desc);
> > > - for (i = 0; i < 4; i++) {
> > > - int s = (max_step_comp[i] == 1 || max_step_comp[i] == 2) ? desc->log2_chroma_w : 0;
> > > - int shifted_w = ((width + (1 << s) - 1)) >> s;
> > > - if (max_step[i] > INT_MAX / shifted_w)
> > > - return AVERROR(EINVAL);
> > > - linesizes[i] = max_step[i] * shifted_w;
> > > - if (desc->flags & PIX_FMT_BITSTREAM)
> > > - linesizes[i] = (linesizes[i] + 7) >> 3;
> > > - }
> > > + for (i = 0; i < 4; i++)
> > > + linesizes[i] = image_get_linesize(width, i, max_step[i], max_step_comp[i], desc);
> >
> > this is missing error checking for the image_get_linesize() return value.
> > it could thus store a error code in linesizes[]
>
> Fixed.
thx
> --
> FFmpeg = Frightening Frenzy Minimal Porno Everlasting Guide
> imgutils.c | 39 ++++++++++++++++++++++++---------------
> 1 file changed, 24 insertions(+), 15 deletions(-)
> 4046c9f824558c9e6a2ed8eadea863f0ed7e42db 0003-imgutils-introduce-internal-image_get_linesize-and-u.patch
> From 220adcafd993ab627f883c4e7a911e42f085a526 Mon Sep 17 00:00:00 2001
> From: Stefano Sabatini <stefano.sabatini-lala at poste.it>
> Date: Sun, 15 May 2011 12:47:06 +0200
> Subject: [PATCH] imgutils: introduce internal image_get_linesize() and use it
>
> Allow to factorize code between av_image_get_linesize() and
> av_image_fill_linesizes(), and add missing checks.
>
> Increase robustness.
LGTM if tested
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
I know you won't believe me, but the highest form of Human Excellence is
to question oneself and others. -- Socrates
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20110516/9adfb055/attachment.asc>
More information about the ffmpeg-devel
mailing list