This fixes artifacts in the last pixel of rows with some widths and pixel formats
Found-by: Dominique Leroux <dominique.ler...@autodesk.com> Signed-off-by: Michael Niedermayer <michae...@gmx.at> --- libavcodec/pngdec.c | 2 +- libavcodec/x86/pngdsp.asm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c index e6b7593..293c7db 100644 --- a/libavcodec/pngdec.c +++ b/libavcodec/pngdec.c @@ -274,7 +274,7 @@ static void png_filter_row(PNGDSPContext *dsp, uint8_t *dst, int filter_type, * the last pixel with bpp=3 */ int w = bpp == 4 ? size : size - 3; if (w > i) { - dsp->add_paeth_prediction(dst + i, src + i, last + i, w - i, bpp); + dsp->add_paeth_prediction(dst + i, src + i, last + i, size - i, bpp); i = w; } } diff --git a/libavcodec/x86/pngdsp.asm b/libavcodec/x86/pngdsp.asm index 678a032..7bd1ab5 100644 --- a/libavcodec/x86/pngdsp.asm +++ b/libavcodec/x86/pngdsp.asm @@ -157,7 +157,7 @@ cglobal add_png_paeth_prediction, 5, 7, %1, dst, src, top, w, bpp, end, cntr movh [dstq], m3 add dstq, bppq cmp dstq, endq - jle .loop + jl .loop mov dstq, [rsp] dec cntrq -- 1.7.9.5 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel