Ollie Lho <[EMAIL PROTECTED]> writes: > Ronald G Minnich wrote: > > > On Thursday 24 January 2002 11:16, Eric W. Biederman wrote: > > > >>Not that I am trying to escape problems, but ron could it be > >>that your DoC (or part of it) just when bad? I can't imagine > >>the hot swap is very good for it. > >> > > it appears so, I am testing with a different part. Weird. It was not > > hot-plugged for a few months. The gunzip probably is quite odd. ron > > > > I think it is some bug in gunzip. If your try with some different > compression level (gzip -1 to -9) the crc error will just gone.
O.k. I think I have found where the bug is in inflate.c When I did the initial conversion I removed this snippet of code from inflate() thinking bk was a locale variable. /* Undo too much lookahead. The next read will be byte aligned so we * can discard unused bits in the last meaningful byte. */ while (bk >= 8) { bk -= 8; inptr--; } With this snippet present the code will only work if the data to be decompressed is in one large stream of bytes. Previously the bug would only trigger if we backed up across a 64K boundary. Now it will trigger whenver there is to much look ahead (which is much worse). I'm not certain what the correct fix is though. Eric