[FFmpeg-cvslog] avfilter/vf_fspp: check count before calling row_idct()

Michael Niedermayer git at videolan.org
Wed Jan 28 17:24:46 CET 2015


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Jan 28 16:26:00 2015 +0100| [375a0273cec41a329c9cca01fb8805e9a0dc3d72] | committer: Michael Niedermayer

avfilter/vf_fspp: check count before calling row_idct()

Fixes crash with odd widths

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=375a0273cec41a329c9cca01fb8805e9a0dc3d72
---

 libavfilter/vf_fspp.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavfilter/vf_fspp.c b/libavfilter/vf_fspp.c
index a4c8a95..e4de0f5 100644
--- a/libavfilter/vf_fspp.c
+++ b/libavfilter/vf_fspp.c
@@ -221,7 +221,8 @@ static void filter(FSPPContext *p, uint8_t *dst, uint8_t *src,
             p->row_fdct(block + 8 * 8, p->src + y * stride + 8 + x0 + 2 - (y & 1), stride, (es - 4) >> 2);
 
         p->column_fidct((int16_t *)(&p->threshold_mtx[0]), block, block3, es&(~1));
-        p->row_idct(block3 + 0 * 8, p->temp + (y & 15) * stride + x0 + 2 - (y & 1), stride, es >> 2);
+        if (es > 3)
+            p->row_idct(block3 + 0 * 8, p->temp + (y & 15) * stride + x0 + 2 - (y & 1), stride, es >> 2);
 
         if (!(y1 & 7) && y1) {
             if (y1 & 8)



More information about the ffmpeg-cvslog mailing list