If using DataType.VARCHAR the null check iterates from the absolute positioned zero index of the data array rather than the relative position index denoted by the variable offset.
--- StringLocator.java.bug 2012-07-17 16:08:03.000000000 -0400
+++ StringLocator.java.fix 2012-07-17 16:08:51.000000000 -0400
@@ -61,7 +61,7 @@
if (dataType == DataType.VARCHAR) {
int nullPos = -1;
- for (int i = 0; i < length; i++) {
+ for (int i = offset; i < (offset + length); i++) {
if (data* == 0) {
nullPos = i;
break;
Attachment: download link