Re: [PATCH 1/2] inflate_fast: sout is already a short so ptr arithwas off by one.

From: Andrew Morton
Date: Tue Mar 02 2010 - 17:52:43 EST


On Sun, 28 Feb 2010 17:06:02 +0100
Joakim Tjernlund <Joakim.Tjernlund@xxxxxxxxxxxx> wrote:

> This won't change anything for current code, but post increment
> will break without this fix, should anyone want to try that.
>

The description is a bit cryptic. Hopefully you understand what you
mean, but does anyone else?

> diff --git a/lib/zlib_inflate/inffast.c b/lib/zlib_inflate/inffast.c
> index fa62fc7..2c13ecc 100644
> --- a/lib/zlib_inflate/inffast.c
> +++ b/lib/zlib_inflate/inffast.c
> @@ -286,7 +286,7 @@ void inflate_fast(z_streamp strm, unsigned start)
> } else { /* dist == 1 or dist == 2 */
> unsigned short pat16;
>
> - pat16 = *(sout-2+2*OFF);
> + pat16 = *(sout-1+OFF);
> if (dist == 1) {
> union uu mm;
> /* copy one char pattern to both bytes */

The code you're altering was changed two months ago by, err, you. I
don't know if the patch still makes sense in current kernels.

Please don't raise patches against old kernels. Please check that,
redo the patch, add a changelog which helps non-inffast.c people
understand what it does, then resend?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/