Program: 97375
Project: 97375
Buggy source:
private void processArtifact() throws OseeCoreException {
  RoughArtifact roughArtifact=new RoughArtifact(RoughArtifactKind.PRIMARY);
  roughArtifact.setSectionNumber(paragraphNumber.trim());
  roughArtifact.addAttribute(CoreAttributeTypes.ParagraphNumber,paragraphNumber);
  roughArtifact.addAttribute(CoreAttributeTypes.Name,paragraphName.trim());
  if (!isRequirement) {
    roughArtifact.setPrimaryArtifactType(CoreArtifactTypes.HeadingHTML);
    roughArtifact.setRoughArtifactKind(RoughArtifactKind.SECONDARY);
  }
  if (!Strings.isValid(guidString)) {
    guidString=GUID.create();
  }
  roughArtifact.setGuid(guidString);
  guidString="String_Node_Str";
  for (int rowIndex=0; rowIndex < theArtifact.size(); rowIndex++) {
    RowTypeEnum rowType=rowIndexToRowTypeMap.get(rowIndex);
    String rowValue=theArtifact.get(rowIndex);
switch (rowType) {
case REQUIREMENTS:
      StringBuffer imageFileList=new StringBuffer("String_Node_Str");
    getImageList(rowValue,imageFileList);
  rowValue=normailizeHtml(rowValue);
String imageFile=imageFileList.toString();
if (!imageFile.isEmpty()) {
String theImage;
int comma=0;
int imageNumber=0;
postProcessGuids.add(guidString);
do {
  comma=imageFile.indexOf(',');
  if (comma == -1) {
    theImage=uriDirectoryName + imageFile;
    imageFile="String_Node_Str";
  }
 else {
    theImage=uriDirectoryName + imageFile.substring(0,comma);
    imageFile=imageFile.substring(comma + 1);
  }
  try {
    URI imageURI=new URI(theImage);
    roughArtifact.addAttribute("String_Node_Str",imageURI);
    rowValue=rowValue.replace(theImage,IMAGE_BASE_NAME + Integer.toString(imageNumber));
    imageNumber++;
  }
 catch (  URISyntaxException e) {
    e.printStackTrace();
  }
}
 while (comma != -1);
}
if (Strings.isValid(rowValue)) {
roughArtifact.addAttribute(CoreAttributeTypes.HTMLContent,rowValue);
}
break;
case ID:
rowValue=rowValue.replaceAll("String_Node_Str","String_Node_Str");
roughArtifact.addAttribute(CoreAttributeTypes.LegacyId,rowValue);
break;
case SUBSYSTEM:
if (!Strings.isValid(subsystem)) {
roughArtifact.addAttribute(CoreAttributeTypes.Subsystem,subsystem);
subsystem="String_Node_Str";
}
break;
case DOCUMENT_APPLICABILITY:
break;
case VERIFICATION_CRITERIA:
processVerification(rowValue,roughArtifact);
break;
case PARENT_ID:
break;
case CHANGE_STATUS:
case OBJECT_HEADING:
case OBJECT_TEXT:
case CHANGE_RATIONALE:
case OTHER:
case LINKS:
default :
break;
}
}
collector.addRoughArtifact(roughArtifact);
inArtifact=false;
theArtifact.clear();
}

Fixed version (ground truth):
private void processArtifact() throws OseeCoreException {
  RoughArtifact roughArtifact=new RoughArtifact(RoughArtifactKind.PRIMARY);
  roughArtifact.setSectionNumber(paragraphNumber.trim());
  roughArtifact.addAttribute(CoreAttributeTypes.ParagraphNumber,paragraphNumber);
  roughArtifact.addAttribute(CoreAttributeTypes.Name,paragraphName.trim());
  if (!isRequirement) {
    roughArtifact.setPrimaryArtifactType(CoreArtifactTypes.HeadingHTML);
    roughArtifact.setRoughArtifactKind(RoughArtifactKind.SECONDARY);
  }
  if (!Strings.isValid(guidString)) {
    guidString=GUID.create();
  }
  roughArtifact.setGuid(guidString);
  guidString="String_Node_Str";
  for (int rowIndex=0; rowIndex < theArtifact.size(); rowIndex++) {
    RowTypeEnum rowType=rowIndexToRowTypeMap.get(rowIndex);
    String rowValue=theArtifact.get(rowIndex);
switch (rowType) {
case REQUIREMENTS:
      StringBuffer imageFileList=new StringBuffer("String_Node_Str");
    getImageList(rowValue,imageFileList);
  rowValue=normailizeHtml(rowValue);
String imageFile=imageFileList.toString();
if (!imageFile.isEmpty()) {
String theImage;
int comma=0;
int imageNumber=0;
postProcessGuids.add(guidString);
do {
  comma=imageFile.indexOf(',');
  if (comma == -1) {
    theImage=uriDirectoryName + imageFile;
    imageFile="String_Node_Str";
  }
 else {
    theImage=uriDirectoryName + imageFile.substring(0,comma);
    imageFile=imageFile.substring(comma + 1);
  }
  try {
    URI imageURI=new URI(theImage);
    roughArtifact.addAttribute("String_Node_Str",imageURI);
    rowValue=rowValue.replace(theImage,IMAGE_BASE_NAME + Integer.toString(imageNumber));
    imageNumber++;
  }
 catch (  URISyntaxException e) {
    e.printStackTrace();
  }
}
 while (comma != -1);
}
if (Strings.isValid(rowValue)) {
roughArtifact.addAttribute(CoreAttributeTypes.HTMLContent,rowValue);
}
break;
case ID:
rowValue=rowValue.replaceAll("String_Node_Str","String_Node_Str");
roughArtifact.addAttribute(CoreAttributeTypes.LegacyId,rowValue);
break;
case SUBSYSTEM:
if (Strings.isValid(subsystem)) {
roughArtifact.addAttribute(CoreAttributeTypes.Subsystem,subsystem);
subsystem="String_Node_Str";
}
break;
case DOCUMENT_APPLICABILITY:
break;
case VERIFICATION_CRITERIA:
processVerification(rowValue,roughArtifact);
break;
case PARENT_ID:
break;
case CHANGE_STATUS:
case OBJECT_HEADING:
case OBJECT_TEXT:
case CHANGE_RATIONALE:
case OTHER:
case LINKS:
default :
break;
}
}
collector.addRoughArtifact(roughArtifact);
inArtifact=false;
theArtifact.clear();
}