nus-yam/ex-repair huggingface dataset:
Program: 95603
Project: 95603
Buggy source:
/** 
 * {@inheritDoc}
 */
public void setPosition(final String position,final String operator,final String units){
  getEventThreadQueuer().invokeAndWait("String_Node_Str",new IRunnable<Void>(){
    public Void run(){
      if (!m_slider.isEnabled()) {
        throw new StepExecutionException("String_Node_Str",EventFactory.createActionError("String_Node_Str"));
      }
      Integer value=null;
      Dictionary<Integer,?> labelTable=m_slider.getLabelTable();
      if (labelTable != null) {
        Enumeration<Integer> keys=labelTable.keys();
        MatchUtil matcher=MatchUtil.getInstance();
        for (        Integer k : Collections.list(keys)) {
          Object o=labelTable.get(k);
          String stringToMatch;
          if (o instanceof JLabel) {
            stringToMatch=((JLabel)o).getText();
          }
 else {
            stringToMatch=String.valueOf(position);
          }
          if (matcher.match(stringToMatch,position,operator)) {
            value=k;
            break;
          }
        }
        if (value == null) {
          throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_FOUND));
        }
      }
 else {
        try {
          value=Integer.valueOf(position);
        }
 catch (        NumberFormatException nfe) {
          throwInvalidInputMessage();
        }
      }
      setValueProgrammatically(units,value);
      return null;
    }
  }
);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public void setPosition(final String position,final String operator,final String units){
  getEventThreadQueuer().invokeAndWait("String_Node_Str",new IRunnable<Void>(){
    public Void run(){
      if (!m_slider.isEnabled()) {
        throw new StepExecutionException("String_Node_Str",EventFactory.createActionError("String_Node_Str"));
      }
      Integer value=null;
      Dictionary<Integer,?> labelTable=m_slider.getLabelTable();
      String prefPos=getPreferredPosition(position,units);
      String possiblePos=getPossiblePosition(prefPos);
      int min=m_slider.getMinimum();
      int max=m_slider.getMaximum();
      int incr=getSliderIncrement();
      MatchUtil matcher=MatchUtil.getInstance();
      for (int val=min; val <= max; val+=incr) {
        if (labelTable != null) {
          Object label=labelTable.get(val);
          if (label != null && label instanceof JLabel) {
            if (matcher.match(((JLabel)label).getText(),possiblePos,operator)) {
              value=val;
              break;
            }
          }
        }
        if (matcher.match(String.valueOf(val),possiblePos,operator)) {
          value=val;
          break;
        }
      }
      if (value == null) {
        throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_FOUND));
      }
      m_slider.setValue(value);
      return null;
    }
  }
);
}
Program: 95604
Project: 95604
Buggy source:
/** 
 * {@inheritDoc}
 */
public boolean performFinish(){
  INodePO placeToInsert=m_listOfExecsToReplace.get(0);
  ISpecTestCasePO specTcToInsert=m_choosePage.getChoosenTestCase();
  try {
    Integer index=NewTestCaseHandlerTCEditor.getPositionToInsert(m_parentTC,placeToInsert);
    JBEditorHelper eh=m_editor.getEditorHelper();
    IExecTestCasePO replacementTCReference=TestCaseBP.addReferencedTestCase(m_parentTC,m_newExec,index);
    InteractionEventDispatcher.getDefault().fireProgammableSelectionEvent(new StructuredSelection(specTcToInsert));
    eh.getEditSupport().lockWorkVersion();
    eh.setDirty(true);
    m_editor.setSelection(new StructuredSelection(replacementTCReference));
  }
 catch (  PMException e) {
    NodeEditorInput inp=(NodeEditorInput)m_editor.getAdapter(NodeEditorInput.class);
    INodePO inpNode=inp.getNode();
    PMExceptionHandler.handlePMExceptionForMasterSession(e);
    try {
      m_editor.reOpenEditor(inpNode);
    }
 catch (    PMException e1) {
      PMExceptionHandler.handlePMExceptionForEditor(e1,m_editor);
    }
  }
  DeleteTreeItemHandlerTCEditor.deleteNodesFromEditor(m_listOfExecsToReplace,m_editor);
  return true;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public boolean performFinish(){
  INodePO placeToInsert=m_listOfExecsToReplace.get(0);
  ISpecTestCasePO specTcToInsert=m_choosePage.getChoosenTestCase();
  try {
    Integer index=NewTestCaseHandlerTCEditor.getPositionToInsert(m_parentTC,placeToInsert);
    JBEditorHelper eh=m_editor.getEditorHelper();
    IExecTestCasePO replacementTCReference=TestCaseBP.addReferencedTestCase(m_parentTC,m_newExec,index);
    InteractionEventDispatcher.getDefault().fireProgammableSelectionEvent(new StructuredSelection(specTcToInsert));
    TestCaseBP.handleFirstReference(m_editor.getEditorHelper().getEditSupport(),m_choosePage.getChoosenTestCase(),false);
    eh.getEditSupport().lockWorkVersion();
    eh.setDirty(true);
    m_editor.setSelection(new StructuredSelection(replacementTCReference));
  }
 catch (  PMException e) {
    NodeEditorInput inp=(NodeEditorInput)m_editor.getAdapter(NodeEditorInput.class);
    INodePO inpNode=inp.getNode();
    PMExceptionHandler.handlePMExceptionForMasterSession(e);
    try {
      m_editor.reOpenEditor(inpNode);
    }
 catch (    PMException e1) {
      PMExceptionHandler.handlePMExceptionForEditor(e1,m_editor);
    }
  }
  DeleteTreeItemHandlerTCEditor.deleteNodesFromEditor(m_listOfExecsToReplace,m_editor);
  return true;
}
Program: 95607
Project: 95607
Buggy source:
@Override protected Process launch(CommandLine command,Map env,File dir) throws IOException {
  String cmdWorkingDirAbsolutePath=FilenameUtils.getFullPathNoEndSeparator(dir.getAbsolutePath());
  String executable=command.getExecutable();
  File commandFile=new File(dir.getCanonicalFile(),executable);
  boolean doesCommandExist=commandFile.exists();
  if (OS.isFamilyWindows() && (!FilenameUtils.equalsNormalizedOnSystem(CURRENT_VM_WORKING_DIR_ABS_PATH,cmdWorkingDirAbsolutePath) || !doesCommandExist)) {
    return m_windowsCommandLauncher.exec(command,env,dir);
  }
  return super.launch(command,env,dir);
}

Fixed version (ground truth):
@Override protected Process launch(CommandLine command,Map env,File dir) throws IOException {
  String cmdWorkingDirAbsolutePath=FilenameUtils.getFullPathNoEndSeparator(dir.getAbsolutePath());
  String executable=command.getExecutable();
  File commandFile=new File(dir.getCanonicalFile(),executable);
  boolean doesCommandExist=commandFile.exists();
  if (OS.isFamilyWindows()) {
    return m_windowsCommandLauncher.exec(command,env,dir);
  }
  return super.launch(command,env,dir);
}
Program: 95608
Project: 95608
Buggy source:
@Override public Rectangle getHeaderBounds(final int column){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TableView table=getRealComponent();
      TableColumn<?,?> col;
      if (m_columns.size() > 0) {
        col=m_columns.get(column);
      }
 else {
        col=getRealComponent().getVisibleLeafColumn(column);
      }
      table.scrollToColumn(col);
      table.layout();
      List<? extends TableHeaderRow> headerRow=NodeTraverseHelper.getInstancesOf(table,TableHeaderRow.class);
      TableColumnHeader colH=null;
      for (      TableHeaderRow tableHeaderRow : headerRow) {
        colH=tableHeaderRow.getColumnHeaderFor(col);
        if (colH != null) {
          break;
        }
      }
      Rectangle b=NodeBounds.getAbsoluteBounds(colH);
      Rectangle tableB=NodeBounds.getAbsoluteBounds(table);
      return new Rectangle(Math.abs(tableB.x - b.x),Math.abs(tableB.y - b.y),Rounding.round(b.getWidth()),Rounding.round(b.getHeight()));
    }
  }
);
  return result;
}

Fixed version (ground truth):
@Override public Rectangle getHeaderBounds(final int column){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TableView table=getRealComponent();
      TableColumn<?,?> col;
      if (m_columns.size() > 0) {
        col=m_columns.get(column);
      }
 else {
        col=getRealComponent().getVisibleLeafColumn(column);
      }
      table.scrollToColumn(col);
      table.layout();
      List<? extends TableHeaderRow> headerRow=NodeTraverseHelper.getInstancesOf(table,TableHeaderRow.class);
      TableColumnHeader colH=null;
      for (      TableHeaderRow tableHeaderRow : headerRow) {
        colH=tableHeaderRow.getColumnHeaderFor(col);
        if (colH != null) {
          return NodeBounds.getRelativeBounds(colH,tableHeaderRow);
        }
      }
      return null;
    }
  }
);
  return result;
}
Program: 95609
Project: 95609
Buggy source:
/** 
 * {@inheritDoc}
 */
public boolean performFinish(){
  INodePO placeToInsert=m_listOfExecsToReplace.get(0);
  ISpecTestCasePO specTcToInsert=m_choosePage.getChoosenTestCase();
  try {
    Integer index=NewTestCaseHandlerTCEditor.getPositionToInsert(m_parentTC,placeToInsert);
    JBEditorHelper eh=m_editor.getEditorHelper();
    IExecTestCasePO replacementTCReference=TestCaseBP.addReferencedTestCase(m_parentTC,m_newExec,index);
    InteractionEventDispatcher.getDefault().fireProgammableSelectionEvent(new StructuredSelection(specTcToInsert));
    eh.getEditSupport().lockWorkVersion();
    eh.setDirty(true);
    m_editor.setSelection(new StructuredSelection(replacementTCReference));
  }
 catch (  PMException e) {
    NodeEditorInput inp=(NodeEditorInput)m_editor.getAdapter(NodeEditorInput.class);
    INodePO inpNode=inp.getNode();
    PMExceptionHandler.handlePMExceptionForMasterSession(e);
    try {
      m_editor.reOpenEditor(inpNode);
    }
 catch (    PMException e1) {
      PMExceptionHandler.handlePMExceptionForEditor(e1,m_editor);
    }
  }
  DeleteTreeItemHandlerTCEditor.deleteNodesFromEditor(m_listOfExecsToReplace,m_editor);
  return true;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public boolean performFinish(){
  INodePO placeToInsert=m_listOfExecsToReplace.get(0);
  ISpecTestCasePO specTcToInsert=m_choosePage.getChoosenTestCase();
  try {
    Integer index=NewTestCaseHandlerTCEditor.getPositionToInsert(m_parentTC,placeToInsert);
    JBEditorHelper eh=m_editor.getEditorHelper();
    IExecTestCasePO replacementTCReference=TestCaseBP.addReferencedTestCase(m_parentTC,m_newExec,index);
    InteractionEventDispatcher.getDefault().fireProgammableSelectionEvent(new StructuredSelection(specTcToInsert));
    TestCaseBP.handleFirstReference(m_editor.getEditorHelper().getEditSupport(),m_choosePage.getChoosenTestCase(),false);
    eh.getEditSupport().lockWorkVersion();
    eh.setDirty(true);
    m_editor.setSelection(new StructuredSelection(replacementTCReference));
  }
 catch (  PMException e) {
    NodeEditorInput inp=(NodeEditorInput)m_editor.getAdapter(NodeEditorInput.class);
    INodePO inpNode=inp.getNode();
    PMExceptionHandler.handlePMExceptionForMasterSession(e);
    try {
      m_editor.reOpenEditor(inpNode);
    }
 catch (    PMException e1) {
      PMExceptionHandler.handlePMExceptionForEditor(e1,m_editor);
    }
  }
  DeleteTreeItemHandlerTCEditor.deleteNodesFromEditor(m_listOfExecsToReplace,m_editor);
  return true;
}
Program: 95610
Project: 95610
Buggy source:
/** 
 * @param parameters The parameters for starting the AUT.
 * @return The arguments for the AUT that were found in the givenparameters.
 */
protected List<String> createAutArguments(Map<String,String> parameters){
  List<String> argsList=new Vector<String>();
  final String joinedAutRunArgs=parameters.get(AutConfigConstants.AUT_RUN_AUT_ARGUMENTS);
  if (joinedAutRunArgs != null) {
    return Arrays.asList(StringUtils.split(joinedAutRunArgs,AutConfigConstants.AUT_RUN_AUT_ARGUMENTS_SEPARATOR_CHAR));
  }
  String autArguments=parameters.get(AutConfigConstants.AUT_ARGUMENTS);
  if (autArguments == null) {
    autArguments=StringConstants.EMPTY;
  }
  StringTokenizer args=new StringTokenizer(autArguments,WHITESPACE_DELIMITER);
  while (args.hasMoreTokens()) {
    String arg=args.nextToken();
    argsList.add(arg);
  }
  return argsList;
}

Fixed version (ground truth):
/** 
 * @param parameters The parameters for starting the AUT.
 * @return The arguments for the AUT that were found in the givenparameters.
 */
protected List<String> createAutArguments(Map<String,String> parameters){
  List<String> argsList=new Vector<String>();
  final String joinedAutRunArgs=parameters.get(AutConfigConstants.AUT_RUN_AUT_ARGUMENTS);
  if (joinedAutRunArgs != null) {
    return Arrays.asList(StringUtils.split(joinedAutRunArgs,AutConfigConstants.AUT_RUN_AUT_ARGUMENTS_SEPARATOR_CHAR));
  }
  processAutRunArguments(parameters,argsList);
  return argsList;
}
Program: 95611
Project: 95611
Buggy source:
/** 
 * @param projectId The (database) ID of the parent project.
 */
public void setParentProjectId(Long projectId){
  setHbmParentProjectId(projectId);
}

Fixed version (ground truth):
/** 
 * @param projectId The (database) ID of the parent project.
 */
public void setParentProjectId(Long projectId){
  setHbmParentProjectId(projectId);
  for (  IDataCellPO cell : getColumns()) {
    cell.setParentProjectId(projectId);
  }
}
Program: 95612
Project: 95612
Buggy source:
/** 
 * {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  super.setParentProjectId(projectId);
  if (getParameterInterface() != null) {
    getParameterInterface().setParentProjectId(projectId);
  }
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  super.setParentProjectId(projectId);
  getDataManager().setParentProjectId(projectId);
  if (getParameterInterface() != null) {
    getParameterInterface().setParentProjectId(projectId);
  }
}
Program: 95613
Project: 95613
Buggy source:
/** 
 * factory method to replace constructor
 * @param name The name of the category.
 * @return TestDataCategoryPO
 */
public static ITestDataCategoryPO createTestDataCategoryPO(String name){
  ITestDataCategoryPO testDataCategory=new TestDataCategoryPO();
  testDataCategory.setName(name);
  return testDataCategory;
}

Fixed version (ground truth):
/** 
 * factory method to replace constructor
 * @param name The name of the category.
 * @return TestDataCategoryPO
 */
public static ITestDataCategoryPO createTestDataCategoryPO(String name){
  ITestDataCategoryPO testDataCategory=createTestDataCategoryPO();
  testDataCategory.setName(name);
  return testDataCategory;
}
Program: 95614
Project: 95614
Buggy source:
/** 
 * Creates and returns a Test Data Manager object using the arguments  provided.
 * @param name Name to use in referencing the created object.  May not be <code>null</code>.
 * @return the created Test Data Manager.
 */
public static ITestDataCubePO createTestDataCubePO(String name){
  return new TestDataCubePO(name);
}

Fixed version (ground truth):
/** 
 * Creates and returns a Test Data Manager object using the arguments  provided.
 * @param name Name to use in referencing the created object.  May not be <code>null</code>.
 * @return the created Test Data Manager.
 */
public static ITestDataCubePO createTestDataCubePO(String name){
  ITestDataCubePO dataCube=new TestDataCubePO(name);
  IProjectPO currentProject=GeneralStorage.getInstance().getProject();
  if (currentProject != null) {
    dataCube.setParentProjectId(currentProject.getId());
  }
  return dataCube;
}
Program: 95615
Project: 95615
Buggy source:
/** 
 * Sets parentProjectId for all existing child nodes.  {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  if (getProjectProperties() != null) {
    getProjectProperties().setParentProjectId(projectId);
  }
  if (getHbmAutCont() != null) {
    getHbmAutCont().setParentProjectId(projectId);
  }
  if (getHbmSpecObjCont() != null) {
    getHbmSpecObjCont().setParentProjectId(projectId);
  }
  if (getHbmExecObjCont() != null) {
    getHbmExecObjCont().setParentProjectId(projectId);
  }
  if (getHbmTestDataCubeContPO() != null) {
    getHbmTestDataCubeContPO().setParentProjectId(projectId);
  }
}

Fixed version (ground truth):
/** 
 * Sets parentProjectId for all existing child nodes.  {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  getDataManager().setParentProjectId(projectId);
  if (getProjectProperties() != null) {
    getProjectProperties().setParentProjectId(projectId);
  }
  if (getHbmAutCont() != null) {
    getHbmAutCont().setParentProjectId(projectId);
  }
  if (getHbmSpecObjCont() != null) {
    getHbmSpecObjCont().setParentProjectId(projectId);
  }
  if (getHbmExecObjCont() != null) {
    getHbmExecObjCont().setParentProjectId(projectId);
  }
  if (getHbmTestDataCubeContPO() != null) {
    getHbmTestDataCubeContPO().setParentProjectId(projectId);
  }
}
Program: 95616
Project: 95616
Buggy source:
/** 
 * {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  setHbmParentProjectId(projectId);
  for (  IParamDescriptionPO paramDesc : getHbmParameterList()) {
    paramDesc.setParentProjectId(projectId);
  }
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public void setParentProjectId(Long projectId){
  setHbmParentProjectId(projectId);
  for (  IParamDescriptionPO paramDesc : getHbmParameterList()) {
    paramDesc.setParentProjectId(projectId);
  }
  getDataManager().setParentProjectId(projectId);
}
Program: 95618
Project: 95618
Buggy source:
/** 
 * Import a project from an export file
 * @param fileName export file name
 * @param exportDir directory to use
 * @param monitor the progress monitor to use
 */
private void importProject(String fileName,String exportDir,IProgressMonitor monitor){
  File impFile=new File(fileName);
  if (!impFile.isAbsolute()) {
    impFile=new File(new File(exportDir),fileName);
  }
  try {
    List<URL> fileURLs=new ArrayList<URL>(1);
    fileURLs.add(impFile.toURI().toURL());
    FileStorageBP.importFiles(fileURLs,monitor,this,false);
  }
 catch (  PMException pme) {
    writeErrorLine(pme.getLocalizedMessage());
  }
catch (  ProjectDeletedException gdpde) {
    writeErrorLine(gdpde.getLocalizedMessage());
  }
catch (  MalformedURLException e) {
    writeErrorLine(e.getLocalizedMessage());
  }
}

Fixed version (ground truth):
/** 
 * Import a project from an export file
 * @param fileName export file name
 * @param exportDir directory to use
 * @param monitor the progress monitor to use
 */
private void importProject(String fileName,String exportDir,IProgressMonitor monitor){
  File impFile=new File(fileName);
  if (!impFile.isAbsolute()) {
    impFile=new File(new File(exportDir),fileName);
  }
  try {
    List<URL> fileURLs=new ArrayList<URL>(1);
    fileURLs.add(impFile.toURI().toURL());
    FileStorageBP.importFiles(fileURLs,monitor,this,false);
  }
 catch (  MalformedURLException e) {
    writeErrorLine(e.getLocalizedMessage());
  }
}
Program: 95620
Project: 95620
Buggy source:
/** 
 * @param io console
 * @param projectDTO 
 */
private void existProjectHandling(IProgressConsole io,ProjectDTO projectDTO){
  String msg=NLS.bind(Messages.ErrorMessageIMPORT_PROJECT_XML_FAILED,new String[]{ProjectNameBP.getInstance().getName(projectDTO.getUuid(),false)}) + StringConstants.NEWLINE + NLS.bind(Messages.ErrorMessageIMPORT_PROJECT_XML_FAILED_EXISTING,new String[]{projectDTO.getName(),projectDTO.getProjectVersion().toString()});
  io.writeStatus(new Status(IStatus.INFO,Activator.PLUGIN_ID,msg));
}

Fixed version (ground truth):
/** 
 * @param io console
 * @param projectDTO 
 */
private void existProjectHandling(IProgressConsole io,ProjectDTO projectDTO){
  String msg=NLS.bind(Messages.ErrorMessageIMPORT_PROJECT_FAILED,new String[]{ProjectNameBP.getInstance().getName(projectDTO.getUuid(),false)}) + StringConstants.NEWLINE + NLS.bind(Messages.ErrorMessageIMPORT_PROJECT_FAILED_EXISTING,new String[]{projectDTO.getName(),projectDTO.getProjectVersion().toString()});
  io.writeStatus(new Status(IStatus.WARNING,Activator.PLUGIN_ID,msg));
}
Program: 95621
Project: 95621
Buggy source:
/** 
 * @param parameterList List of IParameterDetailsPOonly for Persistence (JPA / EclipseLink)
 */
TestResultPO(List<IParameterDetailsPO> parameterList){
  m_parameterList=parameterList;
  setTestResultAdditions(new ArrayList<ITestResultAdditionPO>(4));
}

Fixed version (ground truth):
/** 
 * @param parameterList List of IParameterDetailsPOonly for Persistence (JPA / EclipseLink)
 */
TestResultPO(List<IParameterDetailsPO> parameterList){
  m_parameterList=parameterList;
}
Program: 95622
Project: 95622
Buggy source:
/** 
 * @return the object responsible for maintaining the receiver's parameterinterface as well as test data.
 */
@ManyToOne(cascade=CascadeType.ALL,targetEntity=TestDataCubePO.class,fetch=FetchType.EAGER) @JoinColumn(name="String_Node_Str",unique=true) @BatchFetch(value=BatchFetchType.JOIN) private TestDataCubePO getParameterInterface(){
  return m_parameterInterface;
}

Fixed version (ground truth):
/** 
 * @return the object responsible for maintaining the receiver's parameterinterface as well as test data.
 */
@ManyToOne(cascade=CascadeType.ALL,targetEntity=TestDataCubePO.class,fetch=FetchType.EAGER) @JoinColumn(name="String_Node_Str",unique=true) private TestDataCubePO getParameterInterface(){
  return m_parameterInterface;
}
Program: 95623
Project: 95623
Buggy source:
@Override public Rectangle getNodeBounds(final TreeItem<?> node){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      List<? extends TreeCell> tCells=NodeTraverseHelper.getInstancesOf(tree,TreeCell.class);
      for (      TreeCell<?> cell : tCells) {
        TreeItem<?> item=cell.getTreeItem();
        if (NodeTraverseHelper.isVisible(cell) && (item != null && item.equals(node))) {
          Rectangle cellBounds=NodeBounds.getAbsoluteBounds(cell);
          Rectangle treeBounds=NodeBounds.getAbsoluteBounds(tree);
          int leftX;
          int cellWidth;
          Node disclosureNode=cell.getDisclosureNode();
          if (disclosureNode != null) {
            Rectangle closureNodeBounds=NodeBounds.getAbsoluteBounds(disclosureNode);
            leftX=((int)closureNodeBounds.getMaxX()) - treeBounds.x;
            cellWidth=(int)(cellBounds.getMaxX() - closureNodeBounds.getMaxX());
          }
 else {
            leftX=cellBounds.x - treeBounds.x;
            cellWidth=cellBounds.width;
          }
          int cellRelativeY=cellBounds.y - treeBounds.y;
          return new Rectangle(leftX,cellRelativeY,cellWidth,cellBounds.height);
        }
      }
      return null;
    }
  }
);
  if (result == null) {
    throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
  }
  return result;
}

Fixed version (ground truth):
@Override public Rectangle getNodeBounds(final TreeItem<?> node){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      List<? extends TreeCell> tCells=NodeTraverseHelper.getInstancesOf(tree,TreeCell.class);
      for (      TreeCell<?> cell : tCells) {
        TreeItem<?> item=cell.getTreeItem();
        if (NodeTraverseHelper.isVisible(cell) && (item != null && item.equals(node))) {
          Rectangle b=NodeBounds.getAbsoluteBounds(cell);
          Rectangle treeB=NodeBounds.getAbsoluteBounds(tree);
          return new Rectangle(Math.abs(treeB.x - b.x),Math.abs(treeB.y - b.y),Rounding.round(b.getWidth()),Rounding.round(b.getHeight()));
        }
      }
      return null;
    }
  }
);
  if (result == null) {
    throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
  }
  return result;
}
Program: 95624
Project: 95624
Buggy source:
@Override public void scrollNodeToVisible(final TreeItem<?> node){
  EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Void>(){
    @Override public Void call() throws Exception {
      TreeView tree=getTree();
      int index=tree.getRow(node);
      tree.scrollTo(index);
      tree.layout();
      return null;
    }
  }
);
}

Fixed version (ground truth):
@Override public void scrollNodeToVisible(final TreeItem<?> node){
  EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Void>(){
    @Override public Void call() throws Exception {
      TreeView<?> tree=getTree();
      int index=((TreeView)tree).getRow(node);
      tree.scrollTo(index);
      tree.layout();
      return null;
    }
  }
);
}
Program: 95625
Project: 95625
Buggy source:
@Override public Rectangle getVisibleRowBounds(final Rectangle rowBounds){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      Rectangle treeB=NodeBounds.getAbsoluteBounds(tree);
      Rectangle visibleTreeBounds=new Rectangle(0,0,Rounding.round(treeB.getWidth()),Rounding.round(treeB.getHeight()));
      Rectangle intersection=rowBounds.intersection(visibleTreeBounds);
      if (intersection.isEmpty()) {
        throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
      }
      return intersection;
    }
  }
);
  return result;
}

Fixed version (ground truth):
@Override public Rectangle getVisibleRowBounds(final Rectangle rowBounds){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      Rectangle visibleTreeBounds=new Rectangle(0,0,Rounding.round(tree.getWidth()),Rounding.round(tree.getHeight()));
      return rowBounds.intersection(visibleTreeBounds);
    }
  }
);
  return result;
}
Program: 95626
Project: 95626
Buggy source:
/** 
 * @param dto will be contained the test data manager infos
 * @param po data manager  
 */
private void fillTDManager(TDManagerDTO dto,ITDManager po){
  dto.setUniqueIds(po.getUniqueIds());
  for (  IDataSetPO dataSet : po.getDataSets()) {
    DataSetDTO dsDTO=new DataSetDTO();
    dsDTO.setColumns(dataSet.getColumns());
    dto.addDataSet(dsDTO);
  }
}

Fixed version (ground truth):
/** 
 * @param dto will be contained the test data manager infos
 * @param po data manager  
 */
private void fillTDManager(TDManagerDTO dto,ITDManager po){
  dto.setUniqueIds(po.getUniqueIds());
  for (  IDataSetPO dataSet : po.getDataSets()) {
    DataSetDTO dsDTO=new DataSetDTO();
    dsDTO.setColumns(dataSet.getColumnsCopy());
    dto.addDataSet(dsDTO);
  }
}
Program: 95627
Project: 95627
Buggy source:
/** 
 * Write the information from the Object to its corresponding XML element.
 * @param xml The XML element to be filled
 * @param po The persistent object which contains the information
 */
private void fillTestData(TestData xml,ITDManager po){
  for (  String uniqueId : po.getUniqueIds()) {
    xml.addUniqueIds(uniqueId);
  }
  int rowCnt=1;
  for (  IDataSetPO row : po.getDataSets()) {
    TestDataRow xmlRow=xml.addNewRow();
    xmlRow.setRowCount(rowCnt++);
    int colCnt=1;
    for (    String td : row.getColumns()) {
      TestDataCell xmlCell=xmlRow.addNewData();
      xmlCell.setColumnCount(colCnt++);
      xmlCell.setValue(td);
    }
  }
}

Fixed version (ground truth):
/** 
 * Write the information from the Object to its corresponding XML element.
 * @param xml The XML element to be filled
 * @param po The persistent object which contains the information
 */
private void fillTestData(TestData xml,ITDManager po){
  for (  String uniqueId : po.getUniqueIds()) {
    xml.addUniqueIds(uniqueId);
  }
  int rowCnt=1;
  for (  IDataSetPO row : po.getDataSets()) {
    TestDataRow xmlRow=xml.addNewRow();
    xmlRow.setRowCount(rowCnt++);
    for (int col=0; col < row.getColumnCount(); col++) {
      TestDataCell xmlCell=xmlRow.addNewData();
      xmlCell.setColumnCount(col + 1);
      xmlCell.setValue(row.getValueAt(col));
    }
  }
}
Program: 95629
Project: 95629
Buggy source:
/** 
 * {@inheritDoc} 
 */
public void addColumn(String value){
  getColumns().add(value);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public void addColumn(String value){
  getColumns().add(StringUtils.defaultIfEmpty(value,StringConstants.UNICODE_NULL));
}
Program: 95630
Project: 95630
Buggy source:
/** 
 * {@inheritDoc} 
 */
public void setValueAt(int column,String value){
  getColumns().set(column,value);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public void setValueAt(int column,String value){
  getColumns().set(column,StringUtils.defaultIfEmpty(value,StringConstants.UNICODE_NULL));
}
Program: 95631
Project: 95631
Buggy source:
/** 
 * @return the columns
 */
@ElementCollection(fetch=FetchType.EAGER) @CollectionTable(name="String_Node_Str") @Column(name="String_Node_Str",length=MAX_STRING_LENGTH) @OrderColumn(name="String_Node_Str") @JoinColumn(name="String_Node_Str") @BatchFetch(value=BatchFetchType.JOIN) public List<String> getColumns(){
  return m_columns;
}

Fixed version (ground truth):
/** 
 * @return the columns
 */
@ElementCollection(fetch=FetchType.EAGER) @CollectionTable(name="String_Node_Str") @Column(name="String_Node_Str",length=MAX_STRING_LENGTH) @OrderColumn(name="String_Node_Str") @JoinColumn(name="String_Node_Str") @BatchFetch(value=BatchFetchType.JOIN) private List<String> getColumns(){
  return m_columns;
}
Program: 95632
Project: 95632
Buggy source:
/** 
 * {@inheritDoc} 
 */
public String getValueAt(int column){
  return getColumns().get(column);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public String getValueAt(int column){
  String value=getColumns().get(column);
  if (StringConstants.UNICODE_NULL.equals(value)) {
    return null;
  }
  return value;
}
Program: 95633
Project: 95633
Buggy source:
/** 
 * @param references The references
 * @param row The row representation
 * @param dataSetRow The row index
 */
private void addParamReferences(List<TDCell> references,IDataSetPO row,int dataSetRow){
  int col=0;
  for (  String testData : row.getColumns()) {
    String uniqueId=getDataManager().getUniqueIds().get(col);
    IParamDescriptionPO desc=getParameterForUniqueId(uniqueId);
    ParamValueConverter conv=new ModelParamValueConverter(testData,this,desc);
    if (conv.containsReferences()) {
      references.add(new TDCell(testData,dataSetRow,col));
    }
    col++;
  }
}

Fixed version (ground truth):
/** 
 * @param references The references
 * @param row The row representation
 * @param dataSetRow The row index
 */
private void addParamReferences(List<TDCell> references,IDataSetPO row,int dataSetRow){
  for (int col=0; col < row.getColumnCount(); col++) {
    String testData=row.getValueAt(col);
    String uniqueId=getDataManager().getUniqueIds().get(col);
    IParamDescriptionPO desc=getParameterForUniqueId(uniqueId);
    ParamValueConverter conv=new ModelParamValueConverter(testData,this,desc);
    if (conv.containsReferences()) {
      references.add(new TDCell(testData,dataSetRow,col));
    }
    col++;
  }
}
Program: 95634
Project: 95634
Buggy source:
/** 
 * @return The number of columns
 */
@Transient public int getColumnCount(){
  int columns=0;
  try {
    List<IDataSetPO> dataTable=getDataTable();
    if (dataTable.size() > 0) {
      IDataSetPO listW=dataTable.get(0);
      columns=listW.getColumns().size();
    }
  }
 catch (  IndexOutOfBoundsException e) {
  }
  return columns;
}

Fixed version (ground truth):
/** 
 * @return The number of columns
 */
@Transient public int getColumnCount(){
  int columns=0;
  try {
    List<IDataSetPO> dataTable=getDataTable();
    if (dataTable.size() > 0) {
      IDataSetPO listW=dataTable.get(0);
      columns=listW.getColumnCount();
    }
  }
 catch (  IndexOutOfBoundsException e) {
  }
  return columns;
}
Program: 95635
Project: 95635
Buggy source:
/** 
 * Copies the data of this TDManager to the given TDManager
 * @param tdMan the TDManager to copy the data to
 * @return the given TDManager with the new data.
 */
public ITDManager deepCopy(ITDManager tdMan){
  for (  String uniqueId : getUniqueIds()) {
    tdMan.addUniqueId(uniqueId);
  }
  tdMan.clear();
  for (  IDataSetPO dataSet : getDataSets()) {
    List<String> newRow=new ArrayList<String>(dataSet.getColumnCount());
    for (    String testData : dataSet.getColumns()) {
      newRow.add(testData);
    }
    tdMan.insertDataSet(PoMaker.createListWrapperPO(newRow),tdMan.getDataSetCount());
  }
  return tdMan;
}

Fixed version (ground truth):
/** 
 * Copies the data of this TDManager to the given TDManager
 * @param tdMan the TDManager to copy the data to
 * @return the given TDManager with the new data.
 */
public ITDManager deepCopy(ITDManager tdMan){
  for (  String uniqueId : getUniqueIds()) {
    tdMan.addUniqueId(uniqueId);
  }
  tdMan.clear();
  for (  IDataSetPO dataSet : getDataSets()) {
    int columncount=dataSet.getColumnCount();
    List<String> newRow=new ArrayList<String>(columncount);
    for (int i=0; i < columncount; i++) {
      newRow.add(dataSet.getValueAt(i));
    }
    tdMan.insertDataSet(PoMaker.createListWrapperPO(newRow),tdMan.getDataSetCount());
  }
  return tdMan;
}
Program: 95636
Project: 95636
Buggy source:
/** 
 * create the items for the status line
 */
public static void createStatusLineItems(){
  IStatusLineManager manager=getStatusLineManager();
  StatusLineContributionItem connectionItem=new StatusLineContributionItem(CONNECTION_INFO_STATUSLINE_ITEM);
  manager.insertBefore(StatusLineManager.END_GROUP,connectionItem);
  manager.insertBefore(CONNECTION_INFO_STATUSLINE_ITEM,connectionItem);
  StatusLineContributionItem autToolKitItem=new StatusLineContributionItem(AUT_TOOLKIT_STATUSLINE_ITEM);
  autToolKitItem.setText(StringConstants.EMPTY);
  manager.insertBefore(CONNECTION_INFO_STATUSLINE_ITEM,autToolKitItem);
  manager.update(true);
}

Fixed version (ground truth):
/** 
 * create the items for the status line
 */
public static void createStatusLineItems(){
  IStatusLineManager manager=getStatusLineManager();
  StatusLineContributionItem connectionItem=new StatusLineContributionItem(CONNECTION_INFO_STATUSLINE_ITEM);
  manager.insertBefore(StatusLineManager.END_GROUP,connectionItem);
  StatusLineContributionItem autToolKitItem=new StatusLineContributionItem(AUT_TOOLKIT_STATUSLINE_ITEM);
  autToolKitItem.setText(StringConstants.EMPTY);
  manager.insertBefore(CONNECTION_INFO_STATUSLINE_ITEM,autToolKitItem);
  manager.update(true);
}
Program: 95644
Project: 95644
Buggy source:
/** 
 * Returns the valis staus of the node.<br> Normally all Nodes are valid. only CapPOs with an InvalidComponent should return false.
 * @return true if the Node is valid, false otherwise. 
 */
public boolean isValid();

Fixed version (ground truth):
/** 
 * Returns the valid status of the node.<br> Normally all Nodes are valid. only CapPOs with an InvalidComponent should return false.
 * @return true if the Node is valid, false otherwise. 
 */
public boolean isValid();
Program: 95645
Project: 95645
Buggy source:
/** 
 * @return the object responsible for maintaining the receiver's parameterinterface as well as test data.
 */
@ManyToOne(cascade=CascadeType.ALL,targetEntity=TestDataCubePO.class,fetch=FetchType.EAGER) @JoinColumn(name="String_Node_Str",unique=true) @BatchFetch(value=BatchFetchType.JOIN) private TestDataCubePO getParameterInterface(){
  return m_parameterInterface;
}

Fixed version (ground truth):
/** 
 * @return the object responsible for maintaining the receiver's parameterinterface as well as test data.
 */
@ManyToOne(cascade=CascadeType.ALL,targetEntity=TestDataCubePO.class,fetch=FetchType.EAGER) @JoinColumn(name="String_Node_Str",unique=true) private TestDataCubePO getParameterInterface(){
  return m_parameterInterface;
}
Program: 95646
Project: 95646
Buggy source:
@Override public Rectangle getNodeBounds(final TreeItem<?> node){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      List<? extends TreeCell> tCells=NodeTraverseHelper.getInstancesOf(tree,TreeCell.class);
      for (      TreeCell<?> cell : tCells) {
        TreeItem<?> item=cell.getTreeItem();
        if (NodeTraverseHelper.isVisible(cell) && (item != null && item.equals(node))) {
          Rectangle cellBounds=NodeBounds.getAbsoluteBounds(cell);
          Rectangle treeBounds=NodeBounds.getAbsoluteBounds(tree);
          int leftX;
          int cellWidth;
          Node disclosureNode=cell.getDisclosureNode();
          if (disclosureNode != null) {
            Rectangle closureNodeBounds=NodeBounds.getAbsoluteBounds(disclosureNode);
            leftX=((int)closureNodeBounds.getMaxX()) - treeBounds.x;
            cellWidth=(int)(cellBounds.getMaxX() - closureNodeBounds.getMaxX());
          }
 else {
            leftX=cellBounds.x - treeBounds.x;
            cellWidth=cellBounds.width;
          }
          int cellRelativeY=cellBounds.y - treeBounds.y;
          return new Rectangle(leftX,cellRelativeY,cellWidth,cellBounds.height);
        }
      }
      return null;
    }
  }
);
  if (result == null) {
    throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
  }
  return result;
}

Fixed version (ground truth):
@Override public Rectangle getNodeBounds(final TreeItem<?> node){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      List<? extends TreeCell> tCells=NodeTraverseHelper.getInstancesOf(tree,TreeCell.class);
      for (      TreeCell<?> cell : tCells) {
        TreeItem<?> item=cell.getTreeItem();
        if (NodeTraverseHelper.isVisible(cell) && (item != null && item.equals(node))) {
          Rectangle b=NodeBounds.getAbsoluteBounds(cell);
          Rectangle treeB=NodeBounds.getAbsoluteBounds(tree);
          return new Rectangle(Math.abs(treeB.x - b.x),Math.abs(treeB.y - b.y),Rounding.round(b.getWidth()),Rounding.round(b.getHeight()));
        }
      }
      return null;
    }
  }
);
  if (result == null) {
    throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
  }
  return result;
}
Program: 95647
Project: 95647
Buggy source:
@Override public void scrollNodeToVisible(final TreeItem<?> node){
  EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Void>(){
    @Override public Void call() throws Exception {
      TreeView tree=getTree();
      int index=tree.getRow(node);
      tree.scrollTo(index);
      tree.layout();
      return null;
    }
  }
);
}

Fixed version (ground truth):
@Override public void scrollNodeToVisible(final TreeItem<?> node){
  EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Void>(){
    @Override public Void call() throws Exception {
      TreeView<?> tree=getTree();
      int index=((TreeView)tree).getRow(node);
      tree.scrollTo(index);
      tree.layout();
      return null;
    }
  }
);
}
Program: 95648
Project: 95648
Buggy source:
@Override public Rectangle getVisibleRowBounds(final Rectangle rowBounds){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      Rectangle treeB=NodeBounds.getAbsoluteBounds(tree);
      Rectangle visibleTreeBounds=new Rectangle(0,0,Rounding.round(treeB.getWidth()),Rounding.round(treeB.getHeight()));
      Rectangle intersection=rowBounds.intersection(visibleTreeBounds);
      if (intersection.isEmpty()) {
        throw new StepExecutionException("String_Node_Str",EventFactory.createActionError(TestErrorEvent.NOT_VISIBLE));
      }
      return intersection;
    }
  }
);
  return result;
}

Fixed version (ground truth):
@Override public Rectangle getVisibleRowBounds(final Rectangle rowBounds){
  Rectangle result=EventThreadQueuerJavaFXImpl.invokeAndWait("String_Node_Str",new Callable<Rectangle>(){
    @Override public Rectangle call() throws Exception {
      TreeView<?> tree=getTree();
      tree.layout();
      Rectangle visibleTreeBounds=new Rectangle(0,0,Rounding.round(tree.getWidth()),Rounding.round(tree.getHeight()));
      return rowBounds.intersection(visibleTreeBounds);
    }
  }
);
  return result;
}
Program: 95649
Project: 95649
Buggy source:
/** 
 * @param dto will be contained the test data manager infos
 * @param po data manager  
 */
private void fillTDManager(TDManagerDTO dto,ITDManager po){
  dto.setUniqueIds(po.getUniqueIds());
  for (  IDataSetPO dataSet : po.getDataSets()) {
    DataSetDTO dsDTO=new DataSetDTO();
    dsDTO.setColumns(dataSet.getColumns());
    dto.addDataSet(dsDTO);
  }
}

Fixed version (ground truth):
/** 
 * @param dto will be contained the test data manager infos
 * @param po data manager  
 */
private void fillTDManager(TDManagerDTO dto,ITDManager po){
  dto.setUniqueIds(po.getUniqueIds());
  for (  IDataSetPO dataSet : po.getDataSets()) {
    DataSetDTO dsDTO=new DataSetDTO();
    dsDTO.setColumns(dataSet.getColumnsCopy());
    dto.addDataSet(dsDTO);
  }
}
Program: 95650
Project: 95650
Buggy source:
/** 
 * Write the information from the Object to its corresponding XML element.
 * @param xml The XML element to be filled
 * @param po The persistent object which contains the information
 */
private void fillTestData(TestData xml,ITDManager po){
  for (  String uniqueId : po.getUniqueIds()) {
    xml.addUniqueIds(uniqueId);
  }
  int rowCnt=1;
  for (  IDataSetPO row : po.getDataSets()) {
    TestDataRow xmlRow=xml.addNewRow();
    xmlRow.setRowCount(rowCnt++);
    int colCnt=1;
    for (    String td : row.getColumns()) {
      TestDataCell xmlCell=xmlRow.addNewData();
      xmlCell.setColumnCount(colCnt++);
      xmlCell.setValue(td);
    }
  }
}

Fixed version (ground truth):
/** 
 * Write the information from the Object to its corresponding XML element.
 * @param xml The XML element to be filled
 * @param po The persistent object which contains the information
 */
private void fillTestData(TestData xml,ITDManager po){
  for (  String uniqueId : po.getUniqueIds()) {
    xml.addUniqueIds(uniqueId);
  }
  int rowCnt=1;
  for (  IDataSetPO row : po.getDataSets()) {
    TestDataRow xmlRow=xml.addNewRow();
    xmlRow.setRowCount(rowCnt++);
    for (int col=0; col < row.getColumnCount(); col++) {
      TestDataCell xmlCell=xmlRow.addNewData();
      xmlCell.setColumnCount(col + 1);
      xmlCell.setValue(row.getValueAt(col));
    }
  }
}
Program: 95652
Project: 95652
Buggy source:
/** 
 * {@inheritDoc} 
 */
public void addColumn(String value){
  getColumns().add(value);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public void addColumn(String value){
  getColumns().add(StringUtils.defaultIfEmpty(value,StringConstants.UNICODE_NULL));
}
Program: 95653
Project: 95653
Buggy source:
/** 
 * {@inheritDoc} 
 */
public void setValueAt(int column,String value){
  getColumns().set(column,value);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public void setValueAt(int column,String value){
  getColumns().set(column,StringUtils.defaultIfEmpty(value,StringConstants.UNICODE_NULL));
}
Program: 95654
Project: 95654
Buggy source:
/** 
 * @return the columns
 */
@ElementCollection(fetch=FetchType.EAGER) @CollectionTable(name="String_Node_Str") @Column(name="String_Node_Str",length=MAX_STRING_LENGTH) @OrderColumn(name="String_Node_Str") @JoinColumn(name="String_Node_Str") @BatchFetch(value=BatchFetchType.JOIN) public List<String> getColumns(){
  return m_columns;
}

Fixed version (ground truth):
/** 
 * @return the columns
 */
@ElementCollection(fetch=FetchType.EAGER) @CollectionTable(name="String_Node_Str") @Column(name="String_Node_Str",length=MAX_STRING_LENGTH) @OrderColumn(name="String_Node_Str") @JoinColumn(name="String_Node_Str") @BatchFetch(value=BatchFetchType.JOIN) private List<String> getColumns(){
  return m_columns;
}
Program: 95655
Project: 95655
Buggy source:
/** 
 * {@inheritDoc} 
 */
public String getValueAt(int column){
  return getColumns().get(column);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public String getValueAt(int column){
  String value=getColumns().get(column);
  if (StringConstants.UNICODE_NULL.equals(value)) {
    return null;
  }
  return value;
}
Program: 95656
Project: 95656
Buggy source:
/** 
 * @param references The references
 * @param row The row representation
 * @param dataSetRow The row index
 */
private void addParamReferences(List<TDCell> references,IDataSetPO row,int dataSetRow){
  int col=0;
  for (  String testData : row.getColumns()) {
    String uniqueId=getDataManager().getUniqueIds().get(col);
    IParamDescriptionPO desc=getParameterForUniqueId(uniqueId);
    ParamValueConverter conv=new ModelParamValueConverter(testData,this,desc);
    if (conv.containsReferences()) {
      references.add(new TDCell(testData,dataSetRow,col));
    }
    col++;
  }
}

Fixed version (ground truth):
/** 
 * @param references The references
 * @param row The row representation
 * @param dataSetRow The row index
 */
private void addParamReferences(List<TDCell> references,IDataSetPO row,int dataSetRow){
  for (int col=0; col < row.getColumnCount(); col++) {
    String testData=row.getValueAt(col);
    String uniqueId=getDataManager().getUniqueIds().get(col);
    IParamDescriptionPO desc=getParameterForUniqueId(uniqueId);
    ParamValueConverter conv=new ModelParamValueConverter(testData,this,desc);
    if (conv.containsReferences()) {
      references.add(new TDCell(testData,dataSetRow,col));
    }
    col++;
  }
}
Program: 95657
Project: 95657
Buggy source:
/** 
 * @return The number of columns
 */
@Transient public int getColumnCount(){
  int columns=0;
  try {
    List<IDataSetPO> dataTable=getDataTable();
    if (dataTable.size() > 0) {
      IDataSetPO listW=dataTable.get(0);
      columns=listW.getColumns().size();
    }
  }
 catch (  IndexOutOfBoundsException e) {
  }
  return columns;
}

Fixed version (ground truth):
/** 
 * @return The number of columns
 */
@Transient public int getColumnCount(){
  int columns=0;
  try {
    List<IDataSetPO> dataTable=getDataTable();
    if (dataTable.size() > 0) {
      IDataSetPO listW=dataTable.get(0);
      columns=listW.getColumnCount();
    }
  }
 catch (  IndexOutOfBoundsException e) {
  }
  return columns;
}
Program: 95658
Project: 95658
Buggy source:
/** 
 * Copies the data of this TDManager to the given TDManager
 * @param tdMan the TDManager to copy the data to
 * @return the given TDManager with the new data.
 */
public ITDManager deepCopy(ITDManager tdMan){
  for (  String uniqueId : getUniqueIds()) {
    tdMan.addUniqueId(uniqueId);
  }
  tdMan.clear();
  for (  IDataSetPO dataSet : getDataSets()) {
    List<String> newRow=new ArrayList<String>(dataSet.getColumnCount());
    for (    String testData : dataSet.getColumns()) {
      newRow.add(testData);
    }
    tdMan.insertDataSet(PoMaker.createListWrapperPO(newRow),tdMan.getDataSetCount());
  }
  return tdMan;
}

Fixed version (ground truth):
/** 
 * Copies the data of this TDManager to the given TDManager
 * @param tdMan the TDManager to copy the data to
 * @return the given TDManager with the new data.
 */
public ITDManager deepCopy(ITDManager tdMan){
  for (  String uniqueId : getUniqueIds()) {
    tdMan.addUniqueId(uniqueId);
  }
  tdMan.clear();
  for (  IDataSetPO dataSet : getDataSets()) {
    int columncount=dataSet.getColumnCount();
    List<String> newRow=new ArrayList<String>(columncount);
    for (int i=0; i < columncount; i++) {
      newRow.add(dataSet.getValueAt(i));
    }
    tdMan.insertDataSet(PoMaker.createListWrapperPO(newRow),tdMan.getDataSetCount());
  }
  return tdMan;
}