Program: 130127
Project: 130127
Buggy source:
@Override protected void addFieldsListeners(){
  serverCombo.addModifyListener(new ModifyListener(){
    public void modifyText(    final ModifyEvent e){
      getConnection().setServer(serverCombo.getText());
      checkFieldsValue();
    }
  }
);
  fileField.addModifyListener(new ModifyListener(){
    public void modifyText(    final ModifyEvent e){
      if (!isContextMode()) {
        if (isVisible()) {
          try {
            viewExcelFile();
            restoreSelectedSheets();
            checkFieldsValue();
          }
 catch (          BiffException e1) {
            getConnection().setFilePath(null);
            updateErrorStatus(e1.getMessage());
            makeViewerGroupAvailable(false);
          }
catch (          IOException e1) {
            getConnection().setFilePath(null);
            updateErrorStatus(e1.getMessage());
            makeViewerGroupAvailable(false);
          }
          if (isXlsx) {
            selectModeBtn.setSelection(true);
            modeCombo.setReadOnly(false);
          }
 else {
            selectModeBtn.setSelection(false);
            modeCombo.setReadOnly(true);
          }
          if ((EVENT_MODE).equals(generationMode)) {
            modeCombo.select(1);
          }
 else {
            modeCombo.select(0);
          }
          updateStatus();
        }
      }
    }
  }
);
  sheetsCombo.getCombo().addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (isVisible()) {
        String sheet=sheetsCombo.getText().trim();
        viewSheet(sheet);
        checkFieldsValue();
      }
    }
  }
);
  selectModeBtn.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (selectModeBtn.getSelection()) {
        modeCombo.setReadOnly(false);
      }
 else {
        modeCombo.setReadOnly(true);
        generationMode=USER_MODE;
      }
      updateStatus();
    }
  }
);
  modeCombo.getCombo().addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      int index=modeCombo.getSelectionIndex();
      if (index == 0) {
        generationMode=USER_MODE;
      }
 else {
        generationMode=EVENT_MODE;
      }
      updateStatus();
    }
  }
);
  modeCombo.getCombo().addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      checkFieldsValue();
    }
  }
);
}

Fixed version (ground truth):
@Override protected void addFieldsListeners(){
  serverCombo.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    final ModifyEvent e){
      getConnection().setServer(serverCombo.getText());
      checkFieldsValue();
    }
  }
);
  fileField.addModifyListener(new ModifyListener(){
    @Override public void modifyText(    final ModifyEvent e){
      if (!isContextMode()) {
        if (isVisible()) {
          errorSet.remove(ERRORSET_FILEFIELD);
          try {
            viewExcelFile();
            restoreSelectedSheets();
            checkFieldsValue();
          }
 catch (          BiffException e1) {
            getConnection().setFilePath(null);
            errorSet.add(ERRORSET_FILEFIELD);
            updateErrorStatus(e1.getMessage());
            makeViewerGroupAvailable(false);
          }
catch (          IOException e1) {
            getConnection().setFilePath(null);
            errorSet.add(ERRORSET_FILEFIELD);
            updateErrorStatus(e1.getMessage());
            makeViewerGroupAvailable(false);
          }
          if (isXlsx) {
            selectModeBtn.setSelection(true);
            modeCombo.setReadOnly(false);
          }
 else {
            selectModeBtn.setSelection(false);
            modeCombo.setReadOnly(true);
          }
          if ((EVENT_MODE).equals(generationMode)) {
            modeCombo.select(1);
          }
 else {
            modeCombo.select(0);
          }
          updateStatus();
        }
      }
    }
  }
);
  sheetsCombo.getCombo().addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (isVisible()) {
        String sheet=sheetsCombo.getText().trim();
        viewSheet(sheet);
        checkFieldsValue();
      }
    }
  }
);
  selectModeBtn.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (selectModeBtn.getSelection()) {
        modeCombo.setReadOnly(false);
      }
 else {
        modeCombo.setReadOnly(true);
        generationMode=USER_MODE;
      }
      updateStatus();
    }
  }
);
  modeCombo.getCombo().addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      int index=modeCombo.getSelectionIndex();
      if (index == 0) {
        generationMode=USER_MODE;
      }
 else {
        generationMode=EVENT_MODE;
      }
      updateStatus();
    }
  }
);
  modeCombo.getCombo().addModifyListener(new ModifyListener(){
    @Override public void modifyText(    ModifyEvent e){
      checkFieldsValue();
    }
  }
);
}