2005/9/13, Steve Langasek <[EMAIL PROTECTED]>: > Which is a pretty lame excuse, because sizeof(long) == 4 on 32-bit archs > (not just Linux but most other platforms as well), and sizeof(long) == 8 > on 64-bit archs...
I believe part of the issue is that the width of the type used in the Java sources needs to match the width of the type used in the C sources, and in Java sizeof(long) is always eight bytes, and sizeof(int) is always four bytes. The choice of which type is used then affects the signature of the JNI function call. Cheers, Shaun