[kaffe] Reproducible bugs running Freenet under Kaffe
Matthew Toseland
toad@amphibian.dyndns.org
Thu, 24 Oct 2002 18:23:32 +0100
--MGYHOYXEY6WxJCY8
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Thu, Oct 24, 2002 at 04:52:52PM +0200, Oskar Sandberg wrote:
> On Thu, Oct 24, 2002 at 03:18:41PM +0100, Matthew Toseland wrote:
> > Ok, I've got CVS working now, and I get a NullPointerException,
> > reliably, in java.lang.Class.getResourceAsStream. Attached.
>=20
> Class.java throws an NPE if getResourceAsStream is run for a resource
> that does not exist. This is obviously when looking at the code. I've
> attached a (trivial) patch.
Sorry that my threading is out, but my messages haven't come back yet.
I have found a manageably small test case. I get
$ rm -f /var/lib/freenet-unstable/tertiary/freenet.log ; kaffe
freenet.node.Main --paramFile /etc/freenet-unstable/freenet.conf
Internal error: caught an unexpected exception.
Please check your CLASSPATH and your installation.
java/lang/IllegalMonitorStateException
at
freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:198)
Aborted
QThreadFactory.java is "}", the end of a synchronized block, not the
beginning - so this is a Kaffe bug not a freenet bug?
>=20
> --=20
>=20
> Oskar Sandberg
> oskar@freenetproject.org
> Index: libraries/javalib/java/lang/Class.java
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> RCS file: /cvs/kaffe/kaffe/libraries/javalib/java/lang/Class.java,v
> retrieving revision 1.37
> diff -c -r1.37 Class.java
> *** libraries/javalib/java/lang/Class.java 4 Sep 2002 16:08:13 -0000 1.37
> --- libraries/javalib/java/lang/Class.java 24 Oct 2002 14:48:50 -0000
> ***************
> *** 367,373 ****
> */
> public InputStream getResourceAsStream(String name) {
> try {
> ! return (getResource(name).openStream());
> }
> catch (IOException e) {
> return null;
> --- 367,374 ----
> */
> public InputStream getResourceAsStream(String name) {
> try {
> ! URL res =3D getResource(name);
> ! return (res =3D=3D null ? null : res.openStream());
> }
> catch (IOException e) {
> return null;
--=20
Matthew Toseland
toad@amphibian.dyndns.org
amphibian@users.sourceforge.net
Freenet/Coldstore open source hacker.
Employed full time by Freenet Project Inc. from 11/9/02 to 11/11/02.
http://freenetproject.org/
--MGYHOYXEY6WxJCY8
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.0 (GNU/Linux)
iD8DBQE9uCyUmlVGrEH/+qIRAsS3AKCCuOna+X7sW4tvYJQgFiT3TAz18ACfdu5Y
bfXV33QVa6xmKwFXISRwbjQ=
=sE+M
-----END PGP SIGNATURE-----
--MGYHOYXEY6WxJCY8--