Program: 137656
Project: 137656
Buggy source:
/** 
 * add zshen feature 12919.
 */
protected Composite createjavaEnginSection(Composite sectionClient){
  AnalysisParameters anaParameters=analysisHandler.getAnalysis().getParameters();
  Composite javaEnginSection=toolkit.createComposite(sectionClient);
  Composite checkSection=toolkit.createComposite(javaEnginSection);
  Composite numberSection=toolkit.createComposite(javaEnginSection);
  GridLayout gridLayout=new GridLayout(2,false);
  gridLayout.marginWidth=0;
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(javaEnginSection);
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(checkSection);
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(numberSection);
  javaEnginSection.setLayout(gridLayout);
  checkSection.setLayout(gridLayout);
  numberSection.setLayout(gridLayout);
  toolkit.createLabel(checkSection,DefaultMessagesImpl.getString("String_Node_Str"));
  drillDownCheck=toolkit.createButton(checkSection,"String_Node_Str",SWT.CHECK);
  drillDownCheck.setSelection(true);
  drillDownCheck.setSelection(anaParameters.isStoreData());
  drillDownCheck.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      setDirty(true);
    }
  }
);
  Label maxNumLabel=toolkit.createLabel(numberSection,DefaultMessagesImpl.getString("String_Node_Str"));
  maxNumText=toolkit.createText(numberSection,null,SWT.BORDER);
  maxNumText.setText(String.valueOf(anaParameters.getMaxNumberRows()));
  maxNumText.addModifyListener(new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      String textContent=maxNumText.getText();
      if (StringUtils.isNumeric(textContent)) {
        setDirty(true);
      }
 else {
        MessageDialog.openWarning(e.display.getActiveShell(),DefaultMessagesImpl.getString("String_Node_Str"),DefaultMessagesImpl.getString("String_Node_Str"));
        maxNumText.setText(textContent.substring(0,textContent.length() - 1));
      }
    }
  }
);
  GridDataFactory.fillDefaults().grab(true,false).applyTo(maxNumText);
  GridDataFactory.fillDefaults().align(SWT.BEGINNING,SWT.BEGINNING).applyTo(maxNumLabel);
  GridDataFactory.fillDefaults().grab(true,false).align(SWT.FILL,SWT.BEGINNING).applyTo(drillDownCheck);
  return javaEnginSection;
}

Fixed version (ground truth):
/** 
 * add zshen feature 12919.
 */
protected Composite createjavaEnginSection(Composite sectionClient){
  AnalysisParameters anaParameters=analysisHandler.getAnalysis().getParameters();
  Composite javaEnginSection=toolkit.createComposite(sectionClient);
  Composite checkSection=toolkit.createComposite(javaEnginSection);
  Composite numberSection=toolkit.createComposite(javaEnginSection);
  GridLayout gridLayout=new GridLayout(2,false);
  gridLayout.marginWidth=0;
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(javaEnginSection);
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(checkSection);
  GridDataFactory.fillDefaults().grab(true,false).span(2,0).align(SWT.FILL,SWT.BEGINNING).applyTo(numberSection);
  javaEnginSection.setLayout(gridLayout);
  checkSection.setLayout(gridLayout);
  numberSection.setLayout(gridLayout);
  toolkit.createLabel(checkSection,DefaultMessagesImpl.getString("String_Node_Str"));
  drillDownCheck=toolkit.createButton(checkSection,"String_Node_Str",SWT.CHECK);
  drillDownCheck.setSelection(true);
  drillDownCheck.setSelection(anaParameters.isStoreData());
  drillDownCheck.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      setDirty(true);
    }
  }
);
  Label maxNumLabel=toolkit.createLabel(numberSection,DefaultMessagesImpl.getString("String_Node_Str"));
  maxNumText=toolkit.createText(numberSection,null,SWT.BORDER);
  maxNumText.setText(String.valueOf(anaParameters.getMaxNumberRows()));
  maxNumText.addModifyListener(new ModifyListener(){
    public void modifyText(    ModifyEvent e){
      setDirty(true);
    }
  }
);
  maxNumText.addVerifyListener(new VerifyListener(){
    public void verifyText(    VerifyEvent e){
      String inputValue=e.text;
      Pattern pattern=Pattern.compile("String_Node_Str");
      char[] charArray=inputValue.toCharArray();
      for (      char c : charArray) {
        if (!pattern.matcher(String.valueOf(c)).matches()) {
          e.doit=false;
        }
      }
    }
  }
);
  GridDataFactory.fillDefaults().grab(true,false).applyTo(maxNumText);
  GridDataFactory.fillDefaults().align(SWT.BEGINNING,SWT.BEGINNING).applyTo(maxNumLabel);
  GridDataFactory.fillDefaults().grab(true,false).align(SWT.FILL,SWT.BEGINNING).applyTo(drillDownCheck);
  return javaEnginSection;
}