Program: 59079
Project: 59079
Buggy source:
protected void loadDataParseFile(BufferedReader brFile,final int iNumberOfLinesInFile) throws IOException {
  allocateStorageBufferForTokenPattern();
  progressBarSetStoreInitTitle("String_Node_Str" + this.getFileName(),0,alTargetStorages.size());
  String sLine;
  int iColumnIndex=0;
  int iParsedLineIndex=0;
  while (((sLine=brFile.readLine()) != null) && (iLineInFile < iStopParsingAtLine)) {
    if (iLineInFile < this.iStartParsingAtLine) {
      iLineInFile++;
      continue;
    }
    StringTokenizer strTokenLine=new StringTokenizer(sLine,sTokenSeperator);
    iColumnIndex=0;
    while (strTokenLine.hasMoreTokens()) {
      for (      EStorageType columnDataType : alColumnDataTypes) {
switch (columnDataType) {
case INT:
          alIntBuffers.get(iColumnIndex)[iParsedLineIndex]=StringConversionTool.convertStringToInt(strTokenLine.nextToken(),-1);
        iColumnIndex++;
      break;
case FLOAT:
    alFloatBuffers.get(iColumnIndex)[iParsedLineIndex]=StringConversionTool.convertStringToFloat(strTokenLine.nextToken(),-1);
  iColumnIndex++;
break;
case STRING:
alStringBuffers.get(iColumnIndex).set(iParsedLineIndex,strTokenLine.nextToken());
iColumnIndex++;
break;
case SKIP:
break;
case ABORT:
iColumnIndex=alColumnDataTypes.size();
break;
default :
throw new CaleydoRuntimeException("String_Node_Str" + columnDataType.toString(),CaleydoRuntimeExceptionType.DATAHANDLING);
}
if (iColumnIndex == alColumnDataTypes.size()) continue;
}
}
iLineInFile++;
iParsedLineIndex++;
super.progressBarStoredIncrement();
}
super.progressBarResetTitle();
super.progressBarIncrement(10);
}

Fixed version (ground truth):
protected void loadDataParseFile(BufferedReader brFile,final int iNumberOfLinesInFile) throws IOException {
  allocateStorageBufferForTokenPattern();
  progressBarSetStoreInitTitle("String_Node_Str" + this.getFileName(),0,alTargetStorages.size());
  String sLine;
  int iColumnIndex=0;
  int iParsedLineIndex=0;
  while (((sLine=brFile.readLine()) != null) && (iLineInFile < iStopParsingAtLine)) {
    if (iLineInFile < this.iStartParsingAtLine) {
      iLineInFile++;
      continue;
    }
    StringTokenizer strTokenLine=new StringTokenizer(sLine,sTokenSeperator);
    iColumnIndex=0;
    while (strTokenLine.hasMoreTokens()) {
      for (      EStorageType columnDataType : alColumnDataTypes) {
switch (columnDataType) {
case INT:
          alIntBuffers.get(iColumnIndex)[iParsedLineIndex]=StringConversionTool.convertStringToInt(strTokenLine.nextToken(),-1);
        iColumnIndex++;
      break;
case FLOAT:
    alFloatBuffers.get(iColumnIndex)[iParsedLineIndex]=StringConversionTool.convertStringToFloat(strTokenLine.nextToken(),-1);
  iColumnIndex++;
break;
case STRING:
alStringBuffers.get(iColumnIndex).add(strTokenLine.nextToken());
iColumnIndex++;
break;
case SKIP:
break;
case ABORT:
iColumnIndex=alColumnDataTypes.size();
break;
default :
throw new CaleydoRuntimeException("String_Node_Str" + columnDataType.toString(),CaleydoRuntimeExceptionType.DATAHANDLING);
}
if (iColumnIndex == alColumnDataTypes.size()) continue;
}
}
iLineInFile++;
iParsedLineIndex++;
super.progressBarStoredIncrement();
}
super.progressBarResetTitle();
super.progressBarIncrement(10);
}