Program: 145879
Project: 145879
Buggy source:
/** 
 * this method adds a   {@link TestScenarioParameterTable} to thetestcomponents.
 * @param testFlow TestFlow
 * @param testComponents LinkedList<TestComponent>
 * @param stringTokenizer StringTokenizer
 * @param includeLine String
 * @param isIncluedProjectScenario boolean
 * @throws SystemException is thrown in case of invalid input or parsing errors
 */
private void addTestScenarioParameterTable(TestFlow testFlow,LinkedList<TestComponent> testComponents,StringTokenizer stringTokenizer,String includeLine,boolean isIncluedProjectScenario) throws SystemException {
  if (stringTokenizer.hasMoreTokens()) {
    String nextLine=stringTokenizer.nextToken();
    TestScenarioParameterTable parameterTable=new TestScenarioParameterTable();
    parameterTable.setIncludeLong(includeLine);
    parameterTable.setScenarioOfProject(isIncluedProjectScenario);
    testComponents.add(parameterTable);
    if (nextLine.startsWith("String_Node_Str")) {
      parameterTable.setSimpleScriptStatement(true);
      if (stringTokenizer.hasMoreTokens()) {
        nextLine=stringTokenizer.nextToken().replaceAll("String_Node_Str","String_Node_Str");
        if (nextLine.startsWith("String_Node_Str" + parameterTable.getTitleOutOfInclude() + "String_Node_Str") || nextLine.startsWith("String_Node_Str" + parameterTable.getName() + "String_Node_Str")) {
          parameterTable.setTitle(parameterTable.getTitleOutOfInclude());
        }
      }
 else {
        return;
      }
    }
    nextLine=nextLine.replaceAll("String_Node_Str","String_Node_Str");
    if (nextLine.startsWith("String_Node_Str") && nextLine.equals("String_Node_Str" + parameterTable.getTitleOutOfInclude() + "String_Node_Str") || nextLine.startsWith("String_Node_Str" + parameterTable.getName() + "String_Node_Str")) {
      parameterTable.setTitle(parameterTable.getTitleOutOfInclude());
    }
    while (stringTokenizer.hasMoreElements()) {
      nextLine=stringTokenizer.nextToken();
      if (nextLine.startsWith("String_Node_Str") && !nextLine.startsWith("String_Node_Str")) {
        parameterTable.addParameterLine(nextLine);
        if (parameterTable.getDataTable().getRowCounts() == 1) {
          checkIsParamtableCorrect(testFlow,parameterTable,includeLine);
        }
      }
 else       if (nextLineIsEndOfParameterTable(testFlow,testComponents,nextLine,parameterTable.getTitle())) {
        return;
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * this method adds a   {@link TestScenarioParameterTable} to thetestcomponents.
 * @param testFlow TestFlow
 * @param testComponents LinkedList<TestComponent>
 * @param stringTokenizer StringTokenizer
 * @param includeLine String
 * @param isIncluedProjectScenario boolean
 * @throws SystemException is thrown in case of invalid input or parsing errors
 */
private void addTestScenarioParameterTable(TestFlow testFlow,LinkedList<TestComponent> testComponents,StringTokenizer stringTokenizer,String includeLine,boolean isIncluedProjectScenario) throws SystemException {
  if (stringTokenizer.hasMoreTokens()) {
    String nextLine=stringTokenizer.nextToken();
    TestScenarioParameterTable parameterTable=new TestScenarioParameterTable();
    parameterTable.setIncludeLong(includeLine);
    parameterTable.setScenarioOfProject(isIncluedProjectScenario);
    testComponents.add(parameterTable);
    if (nextLine.startsWith("String_Node_Str")) {
      parameterTable.setSimpleScriptStatement(true);
      if (stringTokenizer.hasMoreTokens()) {
        nextLine=stringTokenizer.nextToken().replaceAll("String_Node_Str","String_Node_Str");
        if (nextLine.startsWith("String_Node_Str" + parameterTable.getTitleOutOfInclude() + "String_Node_Str") || nextLine.startsWith("String_Node_Str" + parameterTable.getName() + "String_Node_Str")) {
          parameterTable.setTitle(parameterTable.getTitleOutOfInclude());
        }
      }
 else {
        return;
      }
    }
    nextLine=nextLine.replaceAll("String_Node_Str","String_Node_Str");
    if (nextLine.startsWith("String_Node_Str") && (nextLine.equals("String_Node_Str" + parameterTable.getTitleOutOfInclude() + "String_Node_Str") || nextLine.startsWith("String_Node_Str" + parameterTable.getName() + "String_Node_Str"))) {
      parameterTable.setTitle(parameterTable.getTitleOutOfInclude());
    }
    while (stringTokenizer.hasMoreElements()) {
      nextLine=stringTokenizer.nextToken();
      if (nextLine.startsWith("String_Node_Str") && !nextLine.startsWith("String_Node_Str")) {
        parameterTable.addParameterLine(nextLine);
        if (parameterTable.getDataTable().getRowCounts() == 1) {
          checkIsParamtableCorrect(testFlow,parameterTable,includeLine);
        }
      }
 else       if (nextLineIsEndOfParameterTable(testFlow,testComponents,nextLine,parameterTable.getTitle())) {
        return;
      }
    }
  }
}