Messages in this thread | | | Date | Tue, 2 Mar 2010 14:52:31 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 1/2] inflate_fast: sout is already a short so ptr arith was off by one. |
| |
On Sun, 28 Feb 2010 17:06:02 +0100 Joakim Tjernlund <Joakim.Tjernlund@transmode.se> 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?
| |