Program: 122279
Project: 122279
Buggy source:
private void createHeader(SashForm allContentForm){
  tabFolder=new CTabFolder(allContentForm,SWT.NONE);
  tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
  wsdlTabItem=new CTabItem(tabFolder,SWT.NONE);
  wsdlTabItem.setText(ExternalWebServiceUIProperties.WSDL_LABEL);
  tabFolder.setSelection(wsdlTabItem);
  tabFolder.setSimple(false);
  inputMappingTabItem=new CTabItem(tabFolder,SWT.BORDER);
  inputMappingTabItem.setText(ExternalWebServiceUIProperties.INPUT_LABEL);
  outputMappingTabItem=new CTabItem(tabFolder,SWT.BORDER);
  outputMappingTabItem.setText(ExternalWebServiceUIProperties.OUTPUT_LABEL);
  wsdlTabItem.setControl(createWSDLStatus());
  inputMappingTabItem.setControl(createInputMappingStatus());
  outputMappingTabItem.setControl(createOutputMappingStatus());
  boolean flag=ProjectManager.getInstance().isInCurrentMainProject(this.connectionItem);
  if (!flag) {
    wsdlTabItem.getControl().setEnabled(false);
    inputMappingTabItem.getControl().setEnabled(false);
    outputMappingTabItem.getControl().setEnabled(false);
  }
  tabFolder.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (expressinPutTableView == null) {
        return;
      }
      if (currentFunction == null) {
        tabFolder.setSelection(wsdlTabItem);
        MessageBox box=new MessageBox(Display.getCurrent().getActiveShell(),SWT.ICON_WARNING | SWT.OK);
        box.setText("String_Node_Str");
        box.setMessage("String_Node_Str");
        box.open();
        return;
      }
      if (isFirst) {
        initWebserviceData();
      }
 else {
        if (inPutcolumnList.isEmpty()) {
          getInConnList();
        }
        if (outPutcolumnList.isEmpty()) {
          getOutConnList();
        }
      }
      int crruenSelect=tabFolder.getSelectionIndex();
      if (webServiceDialog != null) {
        if (crruenSelect == 0) {
          webServiceDialog.setBackButtonUnuse();
          webServiceDialog.setNextButtonCanuse();
        }
        if (crruenSelect == 2) {
          webServiceDialog.setBackButtonCanuse();
          webServiceDialog.setNextButtonUnuse();
        }
        if (crruenSelect == 1) {
          webServiceDialog.setBackButtonCanuse();
          webServiceDialog.setNextButtonCanuse();
        }
      }
      ExtendedTableModel<InputMappingData> inputModel=expressinPutTableView.getExtendedTableModel();
      boolean removeLinksIn=true;
      goin:       for (      InputMappingData indata : inputModel.getBeansList()) {
        if (indata.getInputColumnValue() != null && !"String_Node_Str".equals(indata.getInputColumnValue())) {
          removeLinksIn=false;
          break goin;
        }
      }
      ExtendedTableModel<OutPutMappingData> outputModel=expressoutPutTableView.getExtendedTableModel();
      boolean removeLinksOut=true;
      goout:       for (      OutPutMappingData outdata : outputModel.getBeansList()) {
        if (outdata.getParameterName() != null && !"String_Node_Str".equals(outdata.getParameterName())) {
          removeLinksOut=false;
          break goout;
        }
      }
      if (removeLinksIn && removeLinksOut && tabTotabLinkForin != null) {
        tabTotabLinkForin.clearLinks();
      }
      expressinPutTableView.getTableViewerCreator().getTableViewer().refresh();
      rowoutPutTableView.getTableViewerCreator().getTableViewer().refresh();
    }
  }
);
}

Fixed version (ground truth):
private void createHeader(SashForm allContentForm){
  tabFolder=new CTabFolder(allContentForm,SWT.NONE);
  tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
  wsdlTabItem=new CTabItem(tabFolder,SWT.NONE);
  wsdlTabItem.setText(ExternalWebServiceUIProperties.WSDL_LABEL);
  tabFolder.setSelection(wsdlTabItem);
  tabFolder.setSimple(false);
  inputMappingTabItem=new CTabItem(tabFolder,SWT.BORDER);
  inputMappingTabItem.setText(ExternalWebServiceUIProperties.INPUT_LABEL);
  outputMappingTabItem=new CTabItem(tabFolder,SWT.BORDER);
  outputMappingTabItem.setText(ExternalWebServiceUIProperties.OUTPUT_LABEL);
  wsdlTabItem.setControl(createWSDLStatus());
  inputMappingTabItem.setControl(createInputMappingStatus());
  outputMappingTabItem.setControl(createOutputMappingStatus());
  boolean flag=ProjectManager.getInstance().isInCurrentMainProject(this.connectionItem);
  if (!flag && this.connectionItem != null) {
    wsdlTabItem.getControl().setEnabled(false);
    inputMappingTabItem.getControl().setEnabled(false);
    outputMappingTabItem.getControl().setEnabled(false);
  }
  tabFolder.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (expressinPutTableView == null) {
        return;
      }
      if (currentFunction == null) {
        tabFolder.setSelection(wsdlTabItem);
        MessageBox box=new MessageBox(Display.getCurrent().getActiveShell(),SWT.ICON_WARNING | SWT.OK);
        box.setText("String_Node_Str");
        box.setMessage("String_Node_Str");
        box.open();
        return;
      }
      if (isFirst) {
        initWebserviceData();
      }
 else {
        if (inPutcolumnList.isEmpty()) {
          getInConnList();
        }
        if (outPutcolumnList.isEmpty()) {
          getOutConnList();
        }
      }
      int crruenSelect=tabFolder.getSelectionIndex();
      if (webServiceDialog != null) {
        if (crruenSelect == 0) {
          webServiceDialog.setBackButtonUnuse();
          webServiceDialog.setNextButtonCanuse();
        }
        if (crruenSelect == 2) {
          webServiceDialog.setBackButtonCanuse();
          webServiceDialog.setNextButtonUnuse();
        }
        if (crruenSelect == 1) {
          webServiceDialog.setBackButtonCanuse();
          webServiceDialog.setNextButtonCanuse();
        }
      }
      ExtendedTableModel<InputMappingData> inputModel=expressinPutTableView.getExtendedTableModel();
      boolean removeLinksIn=true;
      goin:       for (      InputMappingData indata : inputModel.getBeansList()) {
        if (indata.getInputColumnValue() != null && !"String_Node_Str".equals(indata.getInputColumnValue())) {
          removeLinksIn=false;
          break goin;
        }
      }
      ExtendedTableModel<OutPutMappingData> outputModel=expressoutPutTableView.getExtendedTableModel();
      boolean removeLinksOut=true;
      goout:       for (      OutPutMappingData outdata : outputModel.getBeansList()) {
        if (outdata.getParameterName() != null && !"String_Node_Str".equals(outdata.getParameterName())) {
          removeLinksOut=false;
          break goout;
        }
      }
      if (removeLinksIn && removeLinksOut && tabTotabLinkForin != null) {
        tabTotabLinkForin.clearLinks();
      }
      expressinPutTableView.getTableViewerCreator().getTableViewer().refresh();
      rowoutPutTableView.getTableViewerCreator().getTableViewer().refresh();
    }
  }
);
}