>>>>> "Roman" == Roman Kennke <[EMAIL PROTECTED]> writes:

Roman> The reason why I check in a half complete thing is a problem in the
Roman> stream handling. At the end of the stream I get a \FFFF followed by
Roman> the normal -1, which looks very suspicious, because \FFFF is definitly
Roman> not in the file. Try it out yourself by simply running:
Roman> jamvm gnu.javax.swing.html.css.CSSScanner

I tried this with my (eclipse-based) build and it worked just fine.
You don't mention what kind of build you have, but I suspect you have
an ordinary build where Classpath is in a .zip.  My guess is that our
zip inflater is doing the wrong thing, possibly as a result of this
patch:

2006-07-12  Tom Tromey  <[EMAIL PROTECTED]>

        PR libgcj/27271:
        * java/util/zip/ZipFile.java (getInputStream): Call addDummyByte
        on PartialInputStream.
        (PartialInputStream.dummyByteCount): New field.
        (PartialInputStream.fillBuffer): Handle dummy byte.
        (PartialInputStream.read): Likewise.
        (PartialInputStream.addDummyByte): New method.

You can test this hypothesis by doing a flat build or by making a
glibj.zip where the individual files are not deflated.

Note that this patch is correct ... if our pure java inflater emits
garbage at the end of a stream in response to the extra byte, then
that is a bug in the inflater.  This is silly, of course, but this
little zlib oddity has worked its way through the entire API, all
users of inflater, etc :-(

Tom

Reply via email to