Program: 139214
Project: 139214
Buggy source:
private void updateLineForJava(final CCombo combo){
  Composite detailComp=widgetMap.get(combo);
  if (detailComp != null) {
    detailComp.dispose();
  }
  detailComp=new Composite(combo.getParent(),SWT.NONE);
  widgetMap.put(combo,detailComp);
  detailComp.setLayout(new GridLayout(4,false));
  Text classNameText=new Text(detailComp,SWT.BORDER);
  classNameText.setLayoutData(new GridData(GridData.FILL_BOTH));
  classNameText.addModifyListener(new NeedToSetDirtyListener());
  ((GridData)classNameText.getLayoutData()).widthHint=250;
  final Text jarPathText=new Text(detailComp,SWT.BORDER);
  jarPathText.setLayoutData(new GridData(GridData.FILL_BOTH));
  jarPathText.addModifyListener(new NeedToSetDirtyListener());
  ((GridData)jarPathText.getLayoutData()).widthHint=350;
  Button button=new Button(detailComp,SWT.PUSH);
  button.setText("String_Node_Str");
  button.addSelectionListener(new SelectionAdapter(){
    public void widgetSelected(    SelectionEvent e){
      FileDialog dialog=new FileDialog(combo.getParent().getShell(),SWT.NONE);
      dialog.setFilterExtensions(new String[]{"String_Node_Str"});
      String path=dialog.open();
      if (path != null) {
        jarPathText.setText(path);
      }
    }
  }
);
  combo.setData(PluginConstant.CLASS_NAME_TEXT,classNameText);
  combo.setData(PluginConstant.JAR_FILE_PATH,jarPathText);
  createExpressionDelButton(detailComp,combo);
  GridDataFactory.fillDefaults().align(SWT.FILL,SWT.FILL).grab(true,false).applyTo(detailComp);
  definitionSection.setExpanded(false);
  definitionSection.setExpanded(true);
}

Fixed version (ground truth):
/** 
 * DOC mzhao Comment method "updateLineForJava".
 * @param combo
 */
private void updateLineForJava(final CCombo combo){
  Composite detailComp=widgetMap.get(combo);
  if (detailComp != null) {
    detailComp.dispose();
  }
  detailComp=new Composite(combo.getParent(),SWT.NONE);
  widgetMap.put(combo,detailComp);
  detailComp.setLayout(new GridLayout(4,false));
  Text classNameText=new Text(detailComp,SWT.BORDER);
  classNameText.setLayoutData(new GridData(GridData.FILL_BOTH));
  classNameText.addModifyListener(new NeedToSetDirtyListener());
  ((GridData)classNameText.getLayoutData()).widthHint=250;
  final Text jarPathText=new Text(detailComp,SWT.BORDER);
  jarPathText.setLayoutData(new GridData(GridData.FILL_BOTH));
  jarPathText.addModifyListener(new NeedToSetDirtyListener());
  ((GridData)jarPathText.getLayoutData()).widthHint=350;
  Button button=new Button(detailComp,SWT.PUSH);
  button.setText("String_Node_Str");
  button.addSelectionListener(new SelectionAdapter(){
    public void widgetSelected(    SelectionEvent e){
      FileDialog dialog=new FileDialog(combo.getParent().getShell(),SWT.NONE);
      dialog.setFilterExtensions(new String[]{"String_Node_Str"});
      String path=dialog.open();
      if (path != null) {
        jarPathText.setText(path);
      }
    }
  }
);
  combo.setData(PluginConstant.CLASS_NAME_TEXT,classNameText);
  combo.setData(PluginConstant.JAR_FILE_PATH,jarPathText);
  createExpressionDelButton(detailComp,combo);
  GridDataFactory.fillDefaults().align(SWT.FILL,SWT.FILL).grab(true,false).applyTo(detailComp);
  definitionSection.setExpanded(false);
  definitionSection.setExpanded(true);
}