On Feb 1, 2007, at 3:39 PM, Christian Thalinger wrote:

Hi!

I found a problem in gnu_java_nio_VMChannel.c.  It's about
NonReadableChannelException and NonWriteableChannelException.  These
exceptions do not have a initializer with String as parameter:

java.lang.NoSuchMethodError: java.nio.channels.NonReadableChannelException.<init>(Ljava/lang/ String;)V
   at gnu.java.nio.VMChannel.read(Native Method)
   at gnu.java.nio.VMChannel.read(VMChannel.java:159)

But the C code assumes this, like:

JCL_ThrowException (env, NON_READABLE_CHANNEL_EXCEPTION, strerror (errno));

I don't know exactly how to fix this "properly".


The C code should just throw a new exception without trying to pass in a message string. This would mean no longer using JCL_ThrowException, and doing a NewObject/ThrowException manually, but whatever.

We could introduce a JCL function that throws an exception with no message string.

Reply via email to