I don't quite know how to describe this. For a change,
this is not JNI related, pure Java.
The problem: I made a mistake using String.charAt(8) on
strings that have only 8 characters max. set.
if (name.regionMatches(0,"texture",0,7)) {
if ((name.charAt(7)=='1') || (name.charAt(7)=='2')) //******
return TYPE_TNAME;
}
The marked line had the bug. Now, the weird thing is that
I get a NullPointerException way later, at a completely
unrelated spot of the program (where there is no null
around anywhere), even in debug mode. Fixing the line
removed the crash.
I am not sure what String.charAt(i) is supposed to do when
you apply it to a String too short, but this doesn't strike
me as proper response. What amazes me most is that a bogus
read access has delayed consequences. The strings in question
are created by using StringBuffer.toString() repeatedly
on the same buffer = new StringBuffer(12), and the code
above is (after some name.equals("someConst")) the first
access to the newly created string.
Any ideas?
b.
P.S.: details & source on demand. I tested against 117v1a,
v2, and v3, all native threads.
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]