nus-yam/ex-repair huggingface dataset:
Program: 96156
Project: 96156
Buggy source:
/** 
 * Inits the browser path area.
 * @param parent The parent Composite.
 */
protected void createBrowserPathEditor(Composite parent){
  m_browserPathLabel=UIComponentHelper.createLabel(parent,"String_Node_Str");
  m_browserPathLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  ControlDecorator.decorateInfo(m_browserPathLabel,"String_Node_Str",false);
  m_browserTextField=UIComponentHelper.createTextField(parent,1);
  m_browserTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_browserPathButton=new Button(UIComponentHelper.createLayoutComposite(parent),SWT.PUSH);
  m_browserPathButton.setText(I18n.getString("String_Node_Str"));
  m_browserPathButton.setLayoutData(BUTTON_LAYOUT);
  m_browserPathButton.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Inits the browser path area.
 * @param parent The parent Composite.
 */
protected void createBrowserPathEditor(Composite parent){
  Label browserPathLabel=UIComponentHelper.createLabel(parent,"String_Node_Str");
  browserPathLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  ControlDecorator.decorateInfo(browserPathLabel,"String_Node_Str",false);
  m_browserTextField=UIComponentHelper.createTextField(parent,1);
  m_browserTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_browserPathButton=new Button(UIComponentHelper.createLayoutComposite(parent),SWT.PUSH);
  m_browserPathButton.setText(I18n.getString("String_Node_Str"));
  m_browserPathButton.setLayoutData(BUTTON_LAYOUT);
  m_browserPathButton.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}
Program: 96157
Project: 96157
Buggy source:
/** 
 * @param basicAreaComposite The composite that represents the basic area.
 */
protected void createBasicArea(Composite basicAreaComposite){
  super.createBasicArea(basicAreaComposite);
  m_urlLabel=UIComponentHelper.createLabel(basicAreaComposite,"String_Node_Str");
  m_urlLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_autUrlTextField=UIComponentHelper.createTextField(basicAreaComposite,2);
  m_autUrlTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_browserLabel=UIComponentHelper.createLabel(basicAreaComposite,"String_Node_Str");
  m_browserLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_browserCombo=UIComponentHelper.createEnumCombo(basicAreaComposite,2,"String_Node_Str",Browser.class);
  m_browserCombo.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * @param basicAreaComposite The composite that represents the basic area.
 */
protected void createBasicArea(Composite basicAreaComposite){
  super.createBasicArea(basicAreaComposite);
  Label urlLabel=UIComponentHelper.createLabel(basicAreaComposite,"String_Node_Str");
  urlLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_autUrlTextField=UIComponentHelper.createTextField(basicAreaComposite,2);
  m_autUrlTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  Label browserLabel=UIComponentHelper.createLabel(basicAreaComposite,"String_Node_Str");
  browserLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_browserCombo=UIComponentHelper.createEnumCombo(basicAreaComposite,2,"String_Node_Str",Browser.class);
  m_browserCombo.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}
Program: 96158
Project: 96158
Buggy source:
/** 
 * Create this dialog's expert area component.
 * @param expertAreaComposite Composite representing the expert area.
 */
protected void createExpertArea(Composite expertAreaComposite){
  super.createExpertArea(expertAreaComposite);
  m_activationMethodLabel=UIComponentHelper.createLabel(expertAreaComposite,"String_Node_Str");
  m_activationMethodLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_activationMethodCombo=UIComponentHelper.createEnumCombo(expertAreaComposite,2,"String_Node_Str",ActivationMethod.class);
  m_activationMethodCombo.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  Label autIdAttibuteLabel=UIComponentHelper.createLabel(expertAreaComposite,"String_Node_Str");
  autIdAttibuteLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_autIdAttibuteTextField=UIComponentHelper.createTextField(expertAreaComposite,2);
  m_autIdAttibuteTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Create this dialog's expert area component.
 * @param expertAreaComposite Composite representing the expert area.
 */
protected void createExpertArea(Composite expertAreaComposite){
  super.createExpertArea(expertAreaComposite);
  Label activationMethodLabel=UIComponentHelper.createLabel(expertAreaComposite,"String_Node_Str");
  activationMethodLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_activationMethodCombo=UIComponentHelper.createEnumCombo(expertAreaComposite,2,"String_Node_Str",ActivationMethod.class);
  m_activationMethodCombo.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  Label autIdAttibuteLabel=UIComponentHelper.createLabel(expertAreaComposite,"String_Node_Str");
  autIdAttibuteLabel.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
  m_autIdAttibuteTextField=UIComponentHelper.createTextField(expertAreaComposite,2);
  m_autIdAttibuteTextField.setData(SwtAUTHierarchyConstants.WIDGET_NAME,"String_Node_Str");
}
Program: 96159
Project: 96159
Buggy source:
/** 
 * {@inheritDoc}
 */
public void startTestSuite(final ITestSuitePO execTestSuite,final Locale locale,final AutIdentifier autId,final boolean autoScreenshot,final Map<String,String> externalVars){
  Job runningTestSuite=new Job(Messages.ExecutingTestSuite){
    protected IStatus run(    IProgressMonitor monitor){
      monitor.beginTask(Messages.ExecutingTestSuite,TEST_SUITE_EXECUTION_RELATIVE_WORK_AMOUNT);
      TestExecution.getInstance().setStartedTestSuite(execTestSuite);
      execTestSuite.setStarted(true);
      m_testsuiteStartTime=new Date();
      setTestresultSummary(PoMaker.createTestResultSummaryPO());
      TestExecution.getInstance().executeTestSuite(execTestSuite,locale,autId,autoScreenshot,externalVars,getTestresultSummary(),monitor);
      return Status.OK_STATUS;
    }
    /** 
 * {@inheritDoc}
 */
    protected void canceling(){
      stopTestExecution();
    }
  }
;
  runningTestSuite.schedule();
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public void startTestSuite(final ITestSuitePO execTestSuite,final Locale locale,final AutIdentifier autId,final boolean autoScreenshot,final Map<String,String> externalVars){
  Job runningTestSuite=new Job(Messages.ExecutingTestSuite){
    protected IStatus run(    IProgressMonitor monitor){
      monitor.beginTask(Messages.ExecutingTestSuite,TEST_SUITE_EXECUTION_RELATIVE_WORK_AMOUNT);
      TestExecution.getInstance().setStartedTestSuite(execTestSuite);
      execTestSuite.setStarted(true);
      m_testsuiteStartTime=new Date();
      setTestresultSummary(PoMaker.createTestResultSummaryPO());
      TestExecution.getInstance().executeTestSuite(execTestSuite,locale,autId,autoScreenshot,externalVars,getTestresultSummary(),monitor);
      if (monitor.isCanceled()) {
        return Status.CANCEL_STATUS;
      }
      return Status.OK_STATUS;
    }
  }
;
  runningTestSuite.addJobChangeListener(new JobChangeAdapter(){
    public void done(    IJobChangeEvent event){
      if (event.getResult().matches(IStatus.CANCEL)) {
        stopTestExecution();
      }
    }
  }
);
  runningTestSuite.schedule();
}
Program: 96161
Project: 96161
Buggy source:
/** 
 * register business processes and service that should be available while complete Jubula live cycle - ProgressController - ComponentNamesListBP
 */
private void registerPermanentServices(){
  ProblemsBP.getInstance();
  TestExecutionContributor.getInstance();
  propagateDataDir();
  Plugin.getDefault().getPreferenceStore().addPropertyChangeListener(new IPropertyChangeListener(){
    public void propertyChange(    PropertyChangeEvent event){
      propagateDataDir();
    }
  }
);
  registerSearchResultListener();
  ImportFileBP.getInstance();
  CompletenessBP.getInstance();
  CompletenessPropagator.getInstance();
  ComponentNameReuseBP.getInstance();
  ToolkitBP.getInstance();
}

Fixed version (ground truth):
/** 
 * register business processes and service that should be available while complete Jubula live cycle - ProgressController - ComponentNamesListBP
 */
private void registerPermanentServices(){
  ProblemsBP.getInstance();
  TestExecutionContributor.getInstance();
  propagateDataDir();
  Plugin.getDefault().getPreferenceStore().addPropertyChangeListener(new IPropertyChangeListener(){
    public void propertyChange(    PropertyChangeEvent event){
      propagateDataDir();
    }
  }
);
  registerSearchResultListener();
  ImportFileBP.getInstance();
  CompletenessBP.getInstance();
  ProblemPropagator.getInstance();
  ComponentNameReuseBP.getInstance();
  ToolkitBP.getInstance();
}
Program: 96162
Project: 96162
Buggy source:
/** 
 * Collect all problems
 * @param checkCompNamesPair boolean, also used to determine whether missing project problems will be reused or rechecked.
 * @param state ServerState
 */
private void doProblemsCheck(boolean checkCompNamesPair,ServerState state){
  clearOldProblems();
  IProjectPO project=GeneralStorage.getInstance().getProject();
  if (project == null) {
    problemNoProjectExists();
  }
 else {
    if (TestSuiteBP.getListOfTestSuites().isEmpty()) {
      problemNoTestSuiteExists();
    }
    checkAllTestSuites();
    checkAllAutConfigs();
    checkAllTestJobs();
    if (project.getIsProtected()) {
      problemProtectedProjectLoaded();
    }
  }
  if (checkCompNamesPair) {
    checkCompNamesPairs();
  }
 else {
    copyCompNamesProblems();
  }
  if (checkCompNamesPair) {
    checkMissingProjects();
  }
 else {
    copyMissingProjectProblems();
  }
  checkReusedProjectLanguages();
  checkServerState(state);
  collectAdditionalProblemsWhichShouldBeMarked();
  createMarkers();
  cleanupProblems();
  CompletenessPropagator.getInstance().propagate();
}

Fixed version (ground truth):
/** 
 * Collect all problems
 * @param checkCompNamesPair boolean, also used to determine whether missing project problems will be reused or rechecked.
 * @param state ServerState
 */
private void doProblemsCheck(boolean checkCompNamesPair,ServerState state){
  clearOldProblems();
  IProjectPO project=GeneralStorage.getInstance().getProject();
  if (project == null) {
    problemNoProjectExists();
  }
 else {
    if (TestSuiteBP.getListOfTestSuites().isEmpty()) {
      problemNoTestSuiteExists();
    }
    checkAllTestSuites();
    checkAllAutConfigs();
    checkAllTestJobs();
    if (project.getIsProtected()) {
      problemProtectedProjectLoaded();
    }
  }
  if (checkCompNamesPair) {
    checkCompNamesPairs();
  }
 else {
    copyCompNamesProblems();
  }
  if (checkCompNamesPair) {
    checkMissingProjects();
  }
 else {
    copyMissingProjectProblems();
  }
  checkReusedProjectLanguages();
  checkServerState(state);
  collectAdditionalProblemsWhichShouldBeMarked();
  createMarkers();
  cleanupProblems();
  ProblemPropagator.getInstance().propagate();
}
Program: 96163
Project: 96163
Buggy source:
/** 
 * {@inheritDoc} 
 */
public Image getImage(Object element){
  Image image=getGDImage(element);
  if (element instanceof INodePO && ((INodePO)element).isGenerated()) {
    image=IconConstants.getGeneratedImage(image);
  }
  Object cbContents=clipboard.getContents(LocalSelectionClipboardTransfer.getInstance());
  if (cbContents instanceof IStructuredSelection) {
    IStructuredSelection sel=(IStructuredSelection)cbContents;
    if (sel.toList().contains(element)) {
      image=RcpIconConstants.getCutImage(image);
    }
  }
  return image;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public Image getImage(Object element){
  Image image=getImageImpl(element);
  if (element instanceof INodePO && ((INodePO)element).isGenerated()) {
    image=IconConstants.getGeneratedImage(image);
  }
  Object cbContents=clipboard.getContents(LocalSelectionClipboardTransfer.getInstance());
  if (cbContents instanceof IStructuredSelection) {
    IStructuredSelection sel=(IStructuredSelection)cbContents;
    if (sel.toList().contains(element)) {
      image=RcpIconConstants.getCutImage(image);
    }
  }
  return image;
}
Program: 96164
Project: 96164
Buggy source:
public void run(){
  if (po instanceof ITestSuitePO || po instanceof ITestJobPO || po instanceof ICategoryPO) {
    getTreeViewer().refresh();
  }
 else   if (po instanceof IProjectPO) {
    setViewerInput();
    getTreeViewer().refresh();
  }
}

Fixed version (ground truth):
public void run(){
  getTreeViewer().refresh();
  IDecoratorManager dm=Plugin.getDefault().getWorkbench().getDecoratorManager();
  dm.update(Constants.CC_DECORATOR_ID);
}
Program: 96165
Project: 96165
Buggy source:
/** 
 * {@inheritDoc}
 */
public void dispose(){
  DataEventDispatcher ded=DataEventDispatcher.getInstance();
  ded.removeDataChangedListener(this);
  ded.removeLanguageChangedListener(this);
  super.dispose();
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public void dispose(){
  DataEventDispatcher ded=DataEventDispatcher.getInstance();
  ded.removeDataChangedListener(this);
  ded.removeLanguageChangedListener(this);
  ded.removeProblemPropagationListener(this);
  super.dispose();
}
Program: 96166
Project: 96166
Buggy source:
/** 
 * Creates the SWT controls for this workbench part.
 * @param parent Composite
 */
public void createPartControl(Composite parent){
  super.createPartControl(parent);
  ColumnViewerToolTipSupport.enableFor(getTreeViewer());
  getTreeViewer().setContentProvider(new TestSuiteBrowserContentProvider());
  DecoratingCellLabelProvider lp=new DecoratingCellLabelProvider(new TestSuiteBrowserLabelProvider(),Plugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator());
  getTreeViewer().setLabelProvider(lp);
  getTreeViewer().setAutoExpandLevel(DEFAULT_EXPANSION);
  setViewerInput();
  Plugin.getHelpSystem().setHelp(getTreeViewer().getControl(),ContextHelpIds.TEST_SUITE_VIEW);
  int ops=DND.DROP_MOVE;
  Transfer[] transfers=new Transfer[]{LocalSelectionTransfer.getInstance()};
  getTreeViewer().addDragSupport(ops,transfers,new TreeViewerContainerDragSourceListener(getTreeViewer()));
  getTreeViewer().addDropSupport(ops,transfers,new TestExecDropTargetListener(this));
  DataEventDispatcher ded=DataEventDispatcher.getInstance();
  ded.addLanguageChangedListener(this,true);
  if (GeneralStorage.getInstance().getProject() != null) {
    handleProjectLoaded();
  }
}

Fixed version (ground truth):
/** 
 * Creates the SWT controls for this workbench part.
 * @param parent Composite
 */
public void createPartControl(Composite parent){
  super.createPartControl(parent);
  ColumnViewerToolTipSupport.enableFor(getTreeViewer());
  getTreeViewer().setContentProvider(new TestSuiteBrowserContentProvider());
  DecoratingCellLabelProvider lp=new DecoratingCellLabelProvider(new TestSuiteBrowserLabelProvider(),Plugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator());
  getTreeViewer().setLabelProvider(lp);
  getTreeViewer().setAutoExpandLevel(DEFAULT_EXPANSION);
  setViewerInput();
  Plugin.getHelpSystem().setHelp(getTreeViewer().getControl(),ContextHelpIds.TEST_SUITE_VIEW);
  int ops=DND.DROP_MOVE;
  Transfer[] transfers=new Transfer[]{LocalSelectionTransfer.getInstance()};
  getTreeViewer().addDragSupport(ops,transfers,new TreeViewerContainerDragSourceListener(getTreeViewer()));
  getTreeViewer().addDropSupport(ops,transfers,new TestExecDropTargetListener(this));
  DataEventDispatcher ded=DataEventDispatcher.getInstance();
  ded.addLanguageChangedListener(this,true);
  ded.addProblemPropagationListener(this);
  if (GeneralStorage.getInstance().getProject() != null) {
    handleProjectLoaded();
  }
}
Program: 96167
Project: 96167
Buggy source:
/** 
 * @return a confirm Dialog, if monitoring job is still running.
 */
private MessageDialog getConfirmDialog(){
  MessageDialog dialog=new MessageDialog(Plugin.getShell(),Messages.ClientDisconnectFromAutAgentTitle,null,Messages.ClientDisconnectFromAutAgentMessage,MessageDialog.QUESTION,new String[]{Messages.DialogMessageButton_YES,Messages.DialogMessageButton_NO},0);
  dialog.create();
  DialogUtils.setWidgetNameForModalDialog(dialog);
  dialog.open();
  return dialog;
}

Fixed version (ground truth):
/** 
 * @return a confirm Dialog, if monitoring job is still running.
 */
private MessageDialog getConfirmDialog(){
  MessageDialog dialog=new MessageDialog(getActiveShell(),Messages.ClientDisconnectFromAutAgentTitle,null,Messages.ClientDisconnectFromAutAgentMessage,MessageDialog.QUESTION,new String[]{Messages.DialogMessageButton_YES,Messages.DialogMessageButton_NO},0);
  dialog.create();
  DialogUtils.setWidgetNameForModalDialog(dialog);
  dialog.open();
  return dialog;
}
Program: 96168
Project: 96168
Buggy source:
/** 
 * @param compNames The Component Names to merge.
 * @return the Merge Component Names dialog.
 */
protected DirectComboBoxDialog<IComponentNamePO> createDialog(Set<IComponentNamePO> compNames){
  List<IComponentNamePO> compNamesList=new ArrayList<IComponentNamePO>(compNames);
  Collections.sort(compNamesList,new Comparator<IComponentNamePO>(){
    public int compare(    IComponentNamePO compName1,    IComponentNamePO compName2){
      return compName1.getName().compareTo(compName2.getName());
    }
  }
);
  List<String> displayNameList=new ArrayList<String>();
  for (  IComponentNamePO compName : compNamesList) {
    displayNameList.add(compName.getName());
  }
  DirectComboBoxDialog<IComponentNamePO> dialog=new DirectComboBoxDialog<IComponentNamePO>(Plugin.getActiveWorkbenchWindowShell(),compNamesList,displayNameList,Messages.MergeComponentNamesMessage,Messages.MergeComponentNamesShellTitle,IconConstants.MERGE_COMPONENT_NAME_DIALOG_IMAGE,Messages.MergeComponentNamesShellTitle,Messages.MergeComponentNamesLabel);
  return dialog;
}

Fixed version (ground truth):
/** 
 * @param compNames The Component Names to merge.
 * @return the Merge Component Names dialog.
 */
protected DirectComboBoxDialog<IComponentNamePO> createDialog(Set<IComponentNamePO> compNames){
  List<IComponentNamePO> compNamesList=new ArrayList<IComponentNamePO>(compNames);
  Collections.sort(compNamesList,new Comparator<IComponentNamePO>(){
    public int compare(    IComponentNamePO compName1,    IComponentNamePO compName2){
      return compName1.getName().compareTo(compName2.getName());
    }
  }
);
  List<String> displayNameList=new ArrayList<String>();
  for (  IComponentNamePO compName : compNamesList) {
    displayNameList.add(compName.getName());
  }
  DirectComboBoxDialog<IComponentNamePO> dialog=new DirectComboBoxDialog<IComponentNamePO>(getActiveShell(),compNamesList,displayNameList,Messages.MergeComponentNamesMessage,Messages.MergeComponentNamesShellTitle,IconConstants.MERGE_COMPONENT_NAME_DIALOG_IMAGE,Messages.MergeComponentNamesShellTitle,Messages.MergeComponentNamesLabel);
  return dialog;
}
Program: 96169
Project: 96169
Buggy source:
/** 
 * Opens the "New Component Name..." dialog.
 * @param compNameMapper The mapper to use for finding Component Names.
 * @param parentShell The parent Shell for the dialog.
 * @return the name typed into the dialog, or <code>null</code> if the dialog was cancelled.
 */
protected String openDialog(IComponentNameMapper compNameMapper,Shell parentShell){
  EnterLogicalCompNameDialog newNameDialog=new NewLogicalCompNameDialog(compNameMapper,parentShell);
  newNameDialog.setHelpAvailable(true);
  newNameDialog.create();
  DialogUtils.setWidgetNameForModalDialog(newNameDialog);
  Plugin.getHelpSystem().setHelp(newNameDialog.getShell(),ContextHelpIds.NEW_COMPONENT_NAME);
  if (newNameDialog.open() == Window.OK) {
    return newNameDialog.getName();
  }
  return null;
}

Fixed version (ground truth):
/** 
 * Opens the "New Component Name..." dialog.
 * @param compNameMapper The mapper to use for finding Component Names.
 * @return the name typed into the dialog, or <code>null</code> if the dialog was cancelled.
 */
protected String openDialog(IComponentNameMapper compNameMapper){
  EnterLogicalCompNameDialog newNameDialog=new NewLogicalCompNameDialog(compNameMapper,getActiveShell());
  newNameDialog.setHelpAvailable(true);
  newNameDialog.create();
  DialogUtils.setWidgetNameForModalDialog(newNameDialog);
  Plugin.getHelpSystem().setHelp(newNameDialog.getShell(),ContextHelpIds.NEW_COMPONENT_NAME);
  if (newNameDialog.open() == Window.OK) {
    return newNameDialog.getName();
  }
  return null;
}
Program: 96170
Project: 96170
Buggy source:
/** 
 * @param event the execution event
 * @return the new name for the test case or <code>null</code> to indicatethat this action has been canceled
 */
protected String getNewTestCaseName(ExecutionEvent event){
  String newTcName=null;
  IWorkbenchPart activePart=HandlerUtil.getActivePart(event);
  if (activePart instanceof AbstractTestCaseEditor) {
    final AbstractTestCaseEditor editor=(AbstractTestCaseEditor)activePart;
    if (editor.isDirty()) {
      Dialog editorDirtyDlg=ErrorHandlingUtil.createMessageDialog(MessageIDs.Q_SAVE_AND_EXTRACT);
      if (editorDirtyDlg.getReturnCode() != Window.OK) {
        return null;
      }
      editor.doSave(new NullProgressMonitor());
    }
    String extractedTCName=getNewName(editor);
    InputDialog dialog=new InputDialog(Plugin.getShell(),Messages.NewTestCaseActionTCTitle,extractedTCName,Messages.NewTestCaseActionTCMessage,Messages.RenameActionTCLabel,Messages.RenameActionTCError,Messages.NewTestCaseActionDoubleTCName,IconConstants.NEW_TC_DIALOG_STRING,Messages.NewTestCaseActionTCShell,false);
    dialog.setHelpAvailable(true);
    dialog.create();
    DialogUtils.setWidgetNameForModalDialog(dialog);
    Plugin.getHelpSystem().setHelp(dialog.getShell(),ContextHelpIds.DIALOG_TESTCASE_EXTRACT);
    dialog.open();
    int retCode=dialog.getReturnCode();
    dialog.close();
    if (retCode == Window.OK) {
      newTcName=dialog.getName();
    }
  }
  return newTcName;
}

Fixed version (ground truth):
/** 
 * @param event the execution event
 * @return the new name for the test case or <code>null</code> to indicatethat this action has been canceled
 */
protected String getNewTestCaseName(ExecutionEvent event){
  String newTcName=null;
  IWorkbenchPart activePart=HandlerUtil.getActivePart(event);
  if (activePart instanceof AbstractTestCaseEditor) {
    final AbstractTestCaseEditor editor=(AbstractTestCaseEditor)activePart;
    if (editor.isDirty()) {
      Dialog editorDirtyDlg=ErrorHandlingUtil.createMessageDialog(MessageIDs.Q_SAVE_AND_EXTRACT);
      if (editorDirtyDlg.getReturnCode() != Window.OK) {
        return null;
      }
      editor.doSave(new NullProgressMonitor());
    }
    String extractedTCName=getNewName(editor);
    InputDialog dialog=new InputDialog(getActiveShell(),Messages.NewTestCaseActionTCTitle,extractedTCName,Messages.NewTestCaseActionTCMessage,Messages.RenameActionTCLabel,Messages.RenameActionTCError,Messages.NewTestCaseActionDoubleTCName,IconConstants.NEW_TC_DIALOG_STRING,Messages.NewTestCaseActionTCShell,false);
    dialog.setHelpAvailable(true);
    dialog.create();
    DialogUtils.setWidgetNameForModalDialog(dialog);
    Plugin.getHelpSystem().setHelp(dialog.getShell(),ContextHelpIds.DIALOG_TESTCASE_EXTRACT);
    dialog.open();
    int retCode=dialog.getReturnCode();
    dialog.close();
    if (retCode == Window.OK) {
      newTcName=dialog.getName();
    }
  }
  return newTcName;
}
Program: 96172
Project: 96172
Buggy source:
/** 
 * Opens the PopUp with the TestCaseTree.
 * @param editor The test case editor.
 */
private void openTestCasePopUp(final TestCaseEditor editor){
  final ISpecTestCasePO parentNode=(ISpecTestCasePO)editor.getTreeViewer().getTree().getItem(0).getData();
  if (hasTestCaseAllEventHandler(parentNode)) {
    return;
  }
  String title=Messages.AddEventHandlerActionAddEventHandler;
  TestCaseTreeDialog dialog=new TestCaseTreeDialog(Plugin.getShell(),title,StringConstants.EMPTY,parentNode,title,SWT.SINGLE,IconConstants.ADD_EH_IMAGE);
  final SelectionTransfer selTransferObj=new SelectionTransfer();
  ISelectionListener selListener=new ISelectionListener(){
    public void selectionChanged(    IWorkbenchPart part,    ISelection selection){
      selTransferObj.setSelection(selection);
    }
  }
;
  dialog.addSelectionListener(selListener);
  dialog.setHelpAvailable(true);
  dialog.create();
  DialogUtils.setWidgetNameForModalDialog(dialog);
  Plugin.getHelpSystem().setHelp(dialog.getShell(),ContextHelpIds.EVENT_HANDLER_ADD);
  int returnCode=dialog.open();
  if (returnCode == TestCaseTreeDialog.ADD) {
    addEventHandler(selTransferObj.getSelection(),parentNode,editor);
  }
  dialog.removeSelectionListener(selListener);
}

Fixed version (ground truth):
/** 
 * Opens the PopUp with the TestCaseTree.
 * @param editor The test case editor.
 */
private void openTestCasePopUp(final TestCaseEditor editor){
  final ISpecTestCasePO parentNode=(ISpecTestCasePO)editor.getTreeViewer().getTree().getItem(0).getData();
  if (hasTestCaseAllEventHandler(parentNode)) {
    return;
  }
  String title=Messages.AddEventHandlerActionAddEventHandler;
  TestCaseTreeDialog dialog=new TestCaseTreeDialog(getActiveShell(),title,StringConstants.EMPTY,parentNode,title,SWT.SINGLE,IconConstants.ADD_EH_IMAGE);
  final SelectionTransfer selTransferObj=new SelectionTransfer();
  ISelectionListener selListener=new ISelectionListener(){
    public void selectionChanged(    IWorkbenchPart part,    ISelection selection){
      selTransferObj.setSelection(selection);
    }
  }
;
  dialog.addSelectionListener(selListener);
  dialog.setHelpAvailable(true);
  dialog.create();
  DialogUtils.setWidgetNameForModalDialog(dialog);
  Plugin.getHelpSystem().setHelp(dialog.getShell(),ContextHelpIds.EVENT_HANDLER_ADD);
  int returnCode=dialog.open();
  if (returnCode == TestCaseTreeDialog.ADD) {
    addEventHandler(selTransferObj.getSelection(),parentNode,editor);
  }
  dialog.removeSelectionListener(selListener);
}
Program: 96173
Project: 96173
Buggy source:
/** 
 * @param pair the current compNamesPairPO
 * @param node the node to search comp type in
 * @return true, if comp type was found
 */
public static boolean searchCompType(final ICompNamesPairPO pair,Object node){
  if (node instanceof IExecTestCasePO && ((IExecTestCasePO)node).getSpecTestCase() != null) {
    for (    Object childNode : ((IExecTestCasePO)node).getSpecTestCase().getUnmodifiableNodeList()) {
      if (childNode instanceof IExecTestCasePO) {
        IExecTestCasePO exec=(IExecTestCasePO)childNode;
        for (        ICompNamesPairPO cnp : exec.getCompNamesPairs()) {
          if (cnp.getSecondName().equals(pair.getFirstName()) && cnp.isPropagated()) {
            pair.setType(cnp.getType());
            if (!StringUtils.isEmpty(pair.getType())) {
              return true;
            }
            boolean retVal=searchCompType(cnp,exec);
            pair.setType(cnp.getType());
            return retVal;
          }
        }
      }
 else       if (childNode instanceof ICapPO) {
        ICapPO cap=(ICapPO)childNode;
        if (cap.getComponentName().equals(pair.getFirstName())) {
          pair.setType(cap.getComponentType());
          return true;
        }
      }
    }
  }
  return false;
}

Fixed version (ground truth):
/** 
 * @param pair the current compNamesPairPO
 * @param node the node to search comp type in
 * @return true, if comp type was found
 */
public static boolean searchCompType(final ICompNamesPairPO pair,Object node){
  if (node instanceof IExecTestCasePO) {
    ISpecTestCasePO specTc=((IExecTestCasePO)node).getSpecTestCase();
    if (specTc == null) {
      return false;
    }
    for (    Object childNode : specTc.getUnmodifiableNodeList()) {
      if (childNode instanceof IExecTestCasePO) {
        IExecTestCasePO exec=(IExecTestCasePO)childNode;
        for (        ICompNamesPairPO cnp : exec.getCompNamesPairs()) {
          if (cnp.getSecondName().equals(pair.getFirstName()) && cnp.isPropagated()) {
            pair.setType(cnp.getType());
            if (isValidCompNamePair(pair)) {
              return true;
            }
            boolean retVal=searchCompType(cnp,exec);
            pair.setType(cnp.getType());
            return retVal;
          }
        }
      }
 else       if (childNode instanceof ICapPO) {
        ICapPO cap=(ICapPO)childNode;
        if (cap.getComponentName().equals(pair.getFirstName())) {
          pair.setType(cap.getComponentType());
          return true;
        }
      }
    }
  }
  return false;
}
Program: 96174
Project: 96174
Buggy source:
/** 
 * Removes incorrect CompNamePairs from children of the given node.
 * @param node CompNamePairs for children of this node will be analyzed.
 */
public static void removeIncorrectCompNamePairs(INodePO node){
  for (  Object o : node.getUnmodifiableNodeList()) {
    if (o instanceof IExecTestCasePO) {
      IExecTestCasePO exec=(IExecTestCasePO)o;
      for (      ICompNamesPairPO pair : new LinkedList<ICompNamesPairPO>(exec.getCompNamesPairs())) {
        searchCompType(pair,exec);
        if (pair.getType().length() == 0) {
          exec.removeCompNamesPair(pair.getFirstName());
        }
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Removes incorrect CompNamePairs from children of the given node.
 * @param node CompNamePairs for children of this node will be analyzed.
 */
public static void removeIncorrectCompNamePairs(INodePO node){
  for (  Object o : node.getUnmodifiableNodeList()) {
    if (o instanceof IExecTestCasePO) {
      IExecTestCasePO exec=(IExecTestCasePO)o;
      for (      ICompNamesPairPO pair : new LinkedList<ICompNamesPairPO>(exec.getCompNamesPairs())) {
        searchCompType(pair,exec);
        if (!isValidCompNamePair(pair)) {
          exec.removeCompNamesPair(pair.getFirstName());
        }
      }
    }
  }
}
Program: 96175
Project: 96175
Buggy source:
/** 
 * @param pair the current compNamesPairPO
 */
private void searchAndSetComponentType(final ICompNamesPairPO pair){
  if (pair.getType() != null && !StringConstants.EMPTY.equals(pair.getType())) {
    return;
  }
  final IPersistentObject orig=getEditorHelper().getEditSupport().getOriginal();
  if (orig instanceof ISpecTestCasePO || orig instanceof ITestSuitePO) {
    INodePO origNode=(INodePO)orig;
    for (    Object node : origNode.getUnmodifiableNodeList()) {
      if (searchCompType(pair,node)) {
        return;
      }
    }
  }
  if (getStructuredSelection().getFirstElement() != null && (pair.getType() == null || StringConstants.EMPTY.equals(pair.getType()))) {
    searchCompType(pair,getStructuredSelection().getFirstElement());
  }
}

Fixed version (ground truth):
/** 
 * @param pair the current compNamesPairPO
 */
private void searchAndSetComponentType(final ICompNamesPairPO pair){
  if (pair.getType() != null && CompNamesBP.isValidCompNamePair(pair)) {
    return;
  }
  final IPersistentObject orig=getEditorHelper().getEditSupport().getOriginal();
  if (orig instanceof ISpecTestCasePO || orig instanceof ITestSuitePO) {
    INodePO origNode=(INodePO)orig;
    for (    Object node : origNode.getUnmodifiableNodeList()) {
      if (CompNamesBP.searchCompType(pair,node)) {
        return;
      }
    }
  }
  Object selectedElement=getStructuredSelection().getFirstElement();
  if (selectedElement != null && (pair.getType() == null || !CompNamesBP.isValidCompNamePair(pair))) {
    CompNamesBP.searchCompType(pair,selectedElement);
  }
}
Program: 96176
Project: 96176
Buggy source:
/** 
 * Removes incorrect CompNamePair from ExecTC during saving.
 */
private void removeIncorrectCompNamePairs(){
  INodePO node=(INodePO)getEditorHelper().getEditSupport().getWorkVersion();
  if (node instanceof ISpecTestCasePO || node instanceof ITestSuitePO) {
    for (    Object o : node.getUnmodifiableNodeList()) {
      if (o instanceof IExecTestCasePO) {
        IExecTestCasePO exec=(IExecTestCasePO)o;
        ICompNamesPairPO[] pairArray=exec.getCompNamesPairs().toArray(new ICompNamesPairPO[exec.getCompNamesPairs().size()]);
        for (        ICompNamesPairPO pair : pairArray) {
          searchAndSetComponentType(pair);
          if (pair.getType().equals(StringConstants.EMPTY)) {
            exec.removeCompNamesPair(pair.getFirstName());
          }
        }
      }
    }
  }
 else {
    LOG.error(Messages.WrongEditSupportInTestCaseEditor + StringConstants.COLON + StringConstants.SPACE+ node);
  }
}

Fixed version (ground truth):
/** 
 * Removes incorrect CompNamePair from ExecTC during saving.
 */
private void removeIncorrectCompNamePairs(){
  INodePO node=(INodePO)getEditorHelper().getEditSupport().getWorkVersion();
  if (node instanceof ISpecTestCasePO || node instanceof ITestSuitePO) {
    for (    Object o : node.getUnmodifiableNodeList()) {
      if (o instanceof IExecTestCasePO) {
        IExecTestCasePO exec=(IExecTestCasePO)o;
        ICompNamesPairPO[] pairArray=exec.getCompNamesPairs().toArray(new ICompNamesPairPO[exec.getCompNamesPairs().size()]);
        for (        ICompNamesPairPO pair : pairArray) {
          searchAndSetComponentType(pair);
          if (!CompNamesBP.isValidCompNamePair(pair)) {
            exec.removeCompNamesPair(pair.getFirstName());
          }
        }
      }
    }
  }
 else {
    LOG.error(Messages.WrongEditSupportInTestCaseEditor + StringConstants.COLON + StringConstants.SPACE+ node);
  }
}
Program: 96177
Project: 96177
Buggy source:
/** 
 * {@inheritDoc}
 */
public boolean canModify(Object element,String property){
  boolean editable=false;
  if (getSelectedExecNodeOwner() instanceof AbstractTestCaseEditor && ((AbstractTestCaseEditor)getSelectedExecNodeOwner()).getEditorHelper().requestEditableState() == EditableState.OK) {
    editable=true;
  }
  if (editable && element instanceof ICompNamesPairPO) {
    final ICompNamesPairPO compNamesPair=(ICompNamesPairPO)element;
    return COLUMN_NEW_NAME.equals(property) && isModifiable() && compNamesPair.getType().length() != 0;
  }
  return false;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
public boolean canModify(Object element,String property){
  boolean editable=false;
  if (getSelectedExecNodeOwner() instanceof AbstractTestCaseEditor && ((AbstractTestCaseEditor)getSelectedExecNodeOwner()).getEditorHelper().requestEditableState() == EditableState.OK) {
    editable=true;
  }
  if (editable && element instanceof ICompNamesPairPO) {
    final ICompNamesPairPO compNamesPair=(ICompNamesPairPO)element;
    return COLUMN_NEW_NAME.equals(property) && isModifiable() && CompNamesBP.isValidCompNamePair(compNamesPair);
  }
  return false;
}
Program: 96178
Project: 96178
Buggy source:
/** 
 * {@inheritDoc} 
 */
public Object getParent(Object element){
  if (element instanceof INodePO) {
    INodePO parent=((INodePO)element).getParentNode();
    IProjectPO activeProject=GeneralStorage.getInstance().getProject();
    if (parent instanceof IProjectPO && !parent.equals(activeProject)) {
      String parentGuid=parent.getGuid();
      if (activeProject != null && parentGuid != null) {
        for (        IReusedProjectPO reusedProject : activeProject.getUsedProjects()) {
          if (parentGuid.equals(reusedProject.getProjectGuid())) {
            return reusedProject;
          }
        }
      }
    }
    return parent;
  }
  if (element instanceof IReusedProjectPO || element instanceof ISpecObjContPO || element instanceof IExecObjContPO) {
    return GeneralStorage.getInstance().getProject();
  }
  if (element instanceof ITestDataCategoryPO) {
    return ((ITestDataCategoryPO)element).getParent();
  }
  if (element instanceof ITestDataCubePO) {
    return ((ITestDataCubePO)element).getParent();
  }
  if (element instanceof SearchResultElement) {
    return null;
  }
  Assert.notReached(Messages.WrongTypeOfElement + StringConstants.EXCLAMATION_MARK);
  return null;
}

Fixed version (ground truth):
/** 
 * {@inheritDoc} 
 */
public Object getParent(Object element){
  if (element instanceof INodePO) {
    INodePO node=((INodePO)element);
    INodePO parent=node.getParentNode();
    Long nodeProjId=node.getParentProjectId();
    IProjectPO activeProject=GeneralStorage.getInstance().getProject();
    if (nodeProjId != null && !nodeProjId.equals(activeProject.getId()) && parent == ISpecObjContPO.TCB_ROOT_NODE) {
      if (activeProject != null && nodeProjId != null) {
        try {
          System.out.println("String_Node_Str");
          String nodeProjGUID=ProjectPM.getGuidOfProjectId(nodeProjId);
          for (          IReusedProjectPO reusedProject : activeProject.getUsedProjects()) {
            if (nodeProjGUID.equals(reusedProject.getProjectGuid())) {
              return reusedProject;
            }
          }
        }
 catch (        JBException e) {
          LOG.warn("String_Node_Str",e);
        }
      }
    }
    return parent;
  }
  if (element instanceof IReusedProjectPO || element instanceof ISpecObjContPO || element instanceof IExecObjContPO) {
    return GeneralStorage.getInstance().getProject();
  }
  if (element instanceof ITestDataCategoryPO) {
    return ((ITestDataCategoryPO)element).getParent();
  }
  if (element instanceof ITestDataCubePO) {
    return ((ITestDataCubePO)element).getParent();
  }
  if (element instanceof SearchResultElement) {
    return null;
  }
  Assert.notReached(Messages.WrongTypeOfElement + StringConstants.EXCLAMATION_MARK);
  return null;
}
Program: 96179
Project: 96179
Buggy source:
/** 
 * @param po the PO
 * @param dataState the data state
 * @param updateState the update state
 */
private void handleDataChangedImpl(final IPersistentObject po,final DataState dataState,final UpdateState updateState){
  if (po instanceof IAUTMainPO) {
    getTreeViewer().refresh();
    return;
  }
  if (updateState == UpdateState.onlyInEditor) {
    return;
  }
switch (dataState) {
case Added:
    handleDataAdded(po);
  break;
case Deleted:
handleDataDeleted(po);
break;
case Renamed:
if (po instanceof IProjectPO || po instanceof ITestSuitePO || po instanceof ITestJobPO|| po instanceof ITestCasePO) {
getTreeViewer().refresh();
}
break;
case StructureModified:
if (po instanceof IProjectPO) {
handleProjectLoaded();
}
if ((po instanceof ISpecTestCasePO) || (po instanceof ITestSuitePO) || (po instanceof ITestJobPO)) {
Object[] expandedElements=getTreeViewer().getExpandedElements();
ISelection selection=getTreeViewer().getSelection();
getTreeViewer().refresh();
getTreeViewer().setExpandedElements(expandedElements);
getTreeViewer().setSelection(selection);
}
if (po instanceof IObjectMappingPO) {
getTreeViewer().refresh();
}
break;
default :
break;
}
}

Fixed version (ground truth):
/** 
 * @param po the PO
 * @param dataState the data state
 * @param updateState the update state
 */
private void handleDataChangedImpl(final IPersistentObject po,final DataState dataState,final UpdateState updateState){
  if (po instanceof IAUTMainPO) {
    getTreeViewer().refresh();
    return;
  }
  if (updateState == UpdateState.onlyInEditor) {
    return;
  }
switch (dataState) {
case Added:
    handleDataAdded(po);
  break;
case Deleted:
handleDataDeleted(po);
break;
case Renamed:
if (po instanceof IProjectPO || po instanceof ITestSuitePO || po instanceof ITestJobPO|| po instanceof ITestCasePO|| po instanceof ICategoryPO) {
getTreeViewer().refresh();
}
break;
case StructureModified:
if (po instanceof IProjectPO) {
handleProjectLoaded();
}
if ((po instanceof ISpecTestCasePO) || (po instanceof ITestSuitePO) || (po instanceof ITestJobPO)) {
Object[] expandedElements=getTreeViewer().getExpandedElements();
ISelection selection=getTreeViewer().getSelection();
getTreeViewer().refresh();
getTreeViewer().setExpandedElements(expandedElements);
getTreeViewer().setSelection(selection);
}
if (po instanceof IObjectMappingPO) {
getTreeViewer().refresh();
}
break;
default :
break;
}
}
Program: 96180
Project: 96180
Buggy source:
/** 
 * Clicks at the current mouse position.
 * @param graphicsComponent The component used for confirming the click.
 * @param clickOptions Configuration for the click.
 */
private void clickImpl(Object graphicsComponent,ClickOptions clickOptions){
  int buttonMask=getButtonMask(clickOptions.getMouseButton());
  int clickCount=clickOptions.getClickCount();
  int[] modifierMask=getModifierMask(clickOptions.getClickModifier());
  if (clickCount > 0) {
    InterceptorOptions options=new InterceptorOptions(new long[]{AWTEvent.MOUSE_EVENT_MASK});
    IRobotEventConfirmer confirmer=m_interceptor.intercept(options);
    try {
      RobotTiming.sleepPreClickDelay();
      pressModifier(modifierMask);
      for (int i=0; i < clickCount; i++) {
        m_robot.mousePress(buttonMask);
        RobotTiming.sleepPostMouseDownDelay();
        m_robot.mouseRelease(buttonMask);
        RobotTiming.sleepPostMouseUpDelay();
      }
      if (clickOptions.isConfirmClick()) {
        confirmer.waitToConfirm(graphicsComponent,new ClickAwtEventMatcher(clickOptions));
      }
    }
  finally {
      releaseModifier(modifierMask);
    }
  }
}

Fixed version (ground truth):
/** 
 * Clicks at the current mouse position.
 * @param graphicsComponent The component used for confirming the click.
 * @param clickOptions Configuration for the click.
 */
private void clickImpl(Object graphicsComponent,ClickOptions clickOptions){
  int buttonMask=getButtonMask(clickOptions.getMouseButton());
  int clickCount=clickOptions.getClickCount();
  int[] modifierMask=getModifierMask(clickOptions.getClickModifier());
  if (clickCount > 0) {
    InterceptorOptions options=new InterceptorOptions(new long[]{AWTEvent.MOUSE_EVENT_MASK});
    IRobotEventConfirmer confirmer=m_interceptor.intercept(options);
    try {
      pressModifier(modifierMask);
      RobotTiming.sleepPreClickDelay();
      for (int i=0; i < clickCount; i++) {
        m_robot.mousePress(buttonMask);
        RobotTiming.sleepPostMouseDownDelay();
        m_robot.mouseRelease(buttonMask);
        RobotTiming.sleepPostMouseUpDelay();
      }
      if (clickOptions.isConfirmClick()) {
        confirmer.waitToConfirm(graphicsComponent,new ClickAwtEventMatcher(clickOptions));
      }
    }
  finally {
      releaseModifier(modifierMask);
    }
  }
}
Program: 96181
Project: 96181
Buggy source:
/** 
 * Clicks at the current mouse position.
 * @param graphicsComponent The component used for confirming the click.
 * @param clickOptions Configuration for the click.
 */
private void clickImpl(Object graphicsComponent,ClickOptions clickOptions){
  int buttonMask=getButtonMask(clickOptions.getMouseButton());
  int clickCount=clickOptions.getClickCount();
  int[] modifierMask=getModifierMask(clickOptions.getClickModifier());
  if (clickCount > 0) {
    final InterceptorOptions options=new InterceptorOptions(new long[]{SWT.MouseUp,SWT.MouseDown});
    final IEventMatcher matcher=new ClickSwtEventMatcher(clickOptions);
    final IRobotEventConfirmer confirmer=m_interceptor.intercept(options);
    try {
      RobotTiming.sleepPreClickDelay();
      pressModifier(modifierMask);
      for (int i=0; i < clickCount; i++) {
        m_robot.mousePress(buttonMask);
        RobotTiming.sleepPostMouseDownDelay();
        m_robot.mouseRelease(buttonMask);
        RobotTiming.sleepPostMouseUpDelay();
      }
      if (clickOptions.isConfirmClick()) {
        try {
          confirmer.waitToConfirm(graphicsComponent,matcher);
        }
 catch (        RobotException re) {
          StringBuffer sb=new StringBuffer("String_Node_Str");
          logRobotException(graphicsComponent,re,sb);
          throw re;
        }
      }
    }
  finally {
      releaseModifier(modifierMask);
    }
  }
}

Fixed version (ground truth):
/** 
 * Clicks at the current mouse position.
 * @param graphicsComponent The component used for confirming the click.
 * @param clickOptions Configuration for the click.
 */
private void clickImpl(Object graphicsComponent,ClickOptions clickOptions){
  int buttonMask=getButtonMask(clickOptions.getMouseButton());
  int clickCount=clickOptions.getClickCount();
  int[] modifierMask=getModifierMask(clickOptions.getClickModifier());
  if (clickCount > 0) {
    final InterceptorOptions options=new InterceptorOptions(new long[]{SWT.MouseUp,SWT.MouseDown});
    final IEventMatcher matcher=new ClickSwtEventMatcher(clickOptions);
    final IRobotEventConfirmer confirmer=m_interceptor.intercept(options);
    try {
      pressModifier(modifierMask);
      RobotTiming.sleepPreClickDelay();
      for (int i=0; i < clickCount; i++) {
        m_robot.mousePress(buttonMask);
        RobotTiming.sleepPostMouseDownDelay();
        m_robot.mouseRelease(buttonMask);
        RobotTiming.sleepPostMouseUpDelay();
      }
      if (clickOptions.isConfirmClick()) {
        try {
          confirmer.waitToConfirm(graphicsComponent,matcher);
        }
 catch (        RobotException re) {
          StringBuffer sb=new StringBuffer("String_Node_Str");
          logRobotException(graphicsComponent,re,sb);
          throw re;
        }
      }
    }
  finally {
      releaseModifier(modifierMask);
    }
  }
}
Program: 96182
Project: 96182
Buggy source:
/** 
 * Verifies, if value exists in column.
 * @param col The column of the cell.
 * @param colOperator The column header operator
 * @param value The cell text to verify.
 * @param operator The operation used to verify
 * @param searchType Determines where the search begins ("relative" or "absolute")
 * @param exists true if value exists, false otherwise
 * @throws StepExecutionException If the row or the column is invalid, or if the rendered text cannot be extracted.
 */
public void gdVerifyValueInColumn(final String col,final String colOperator,final String value,final String operator,final String searchType,boolean exists) throws StepExecutionException {
  final int implCol=getColumnFromString(col,colOperator);
  Boolean valueExists=new Boolean(true);
  valueExists=(Boolean)getEventThreadQueuer().invokeAndWait("String_Node_Str",new IRunnable(){
    public Object run() throws StepExecutionException {
      final int itemCount=m_table.getItemCount();
      for (int i=getStartingRowIndex(searchType); i < itemCount; ++i) {
        if (MatchUtil.getInstance().match(m_table.getItem(i).getText(implCol),value,operator)) {
          return new Boolean(true);
        }
      }
      String header=m_table.getColumn(implCol).getText();
      if (MatchUtil.getInstance().match(header,value,operator)) {
        return new Boolean(true);
      }
      return new Boolean(false);
    }
  }
);
  Verifier.equals(exists,valueExists.booleanValue());
}

Fixed version (ground truth):
/** 
 * Verifies, if value exists in column.
 * @param col The column of the cell.
 * @param colOperator The column header operator
 * @param value The cell text to verify.
 * @param operator The operation used to verify
 * @param searchType Determines where the search begins ("relative" or "absolute")
 * @param exists true if value exists, false otherwise
 * @throws StepExecutionException If the row or the column is invalid, or if the rendered text cannot be extracted.
 */
public void gdVerifyValueInColumn(final String col,final String colOperator,final String value,final String operator,final String searchType,boolean exists) throws StepExecutionException {
  final int implCol=getColumnFromString(col,colOperator);
  Boolean valueExists=new Boolean(true);
  valueExists=(Boolean)getEventThreadQueuer().invokeAndWait("String_Node_Str",new IRunnable(){
    public Object run() throws StepExecutionException {
      final int itemCount=m_table.getItemCount();
      for (int i=getStartingRowIndex(searchType); i < itemCount; ++i) {
        if (MatchUtil.getInstance().match(m_table.getItem(i).getText(implCol),value,operator)) {
          return new Boolean(true);
        }
      }
      if (m_table.getHeaderVisible()) {
        String header=m_table.getColumn(implCol).getText();
        if (MatchUtil.getInstance().match(header,value,operator)) {
          return new Boolean(true);
        }
      }
      return new Boolean(false);
    }
  }
);
  Verifier.equals(exists,valueExists.booleanValue());
}