Skip to main content.
home | support | download

Back to List Archive

Re: SWISH-E Bug: Infinite Loop in uncompress1() on

From: Patrick O'Lone <polone(at)not-real.townnews.com>
Date: Mon Dec 20 2004 - 19:59:33 GMT
The only way to reproduce it would be to get a corrupt properties file 
(i.e. zlib compression failed for some reason). This happens to us 
occasionally because the file is written over NFS.

You could then try searching, like so:

swish-e -w foo -f index.swish-e -L someproperty "range1" "range2"

It will get stuck an infinite loop. If you strace, you'll see it trying 
to read() over and over again. Originally, we thought that if you just 
break from the loop in uncompress1() you would be fine, but because 
uncompress1() returns the ACTUAL byte, not a pointer, we can't just 
break from the loop - we have to throw an error using something like 
progerr().

Bill Moseley wrote:
> Patrick,
> 
> We are not following this bug you are describing.
> 
> Can you provide a test case so we can see what situations cause it?
> 

-- 
Patrick O'Lone
Software Project Manager
TownNews.com

E-mail ... polone@townnews.com
Phone .... 309-743-0809
Fax ...... 309-743-0830
Received on Mon Dec 20 11:59:34 2004