Program: 118605
Project: 118605
Buggy source:
private void createTextComponent(final EConnectionParameterName key,IContext defaultContext){
  GridLayout gridLayout;
  GridData gridData;
  Composite hostComposite=new Composite(mainComposite,SWT.NONE);
  gridLayout=new GridLayout();
  gridLayout.verticalSpacing=2;
  gridLayout.marginTop=5;
  gridLayout.marginBottom=2;
  gridLayout.marginHeight=0;
  gridLayout.marginWidth=0;
  gridLayout.marginLeft=0;
  gridLayout.marginRight=0;
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  hostComposite.setLayout(gridLayout);
  hostComposite.setLayoutData(gridData);
  Label hostLabel=new Label(hostComposite,SWT.NONE);
  hostLabel.setText(key.getDisplayName() + "String_Node_Str");
  GridData data=new GridData(GridData.FILL_HORIZONTAL);
  hostLabel.setLayoutData(data);
  final Text host=new Text(hostComposite,SWT.BORDER);
  host.setText(pvValues.get(key));
  if (host.getText().trim().length() == 0) {
    host.setBackground(ColorConstants.red);
    host.redraw();
  }
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  host.setLayoutData(gridData);
  final Text hostText=new Text(hostComposite,SWT.NONE);
  hostText.setEditable(false);
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  hostText.setLayoutData(gridData);
  hostText.setText(CONTEXT_WITH + ContextParameterUtils.parseScriptContextCode(host.getText(),defaultContext));
  host.setData(TEXT_CONTROL,hostText);
  host.setData(key);
  allParamText.add(host);
  host.addKeyListener(new KeyAdapter(){
    @Override public void keyReleased(    KeyEvent e){
      if (isRequriedValue(key.getName())) {
        if (host.getText().trim().length() == 0) {
          host.setBackground(ColorConstants.red);
          host.redraw();
        }
 else {
          host.setBackground(ColorConstants.white);
          host.redraw();
        }
        resetValues(host,hostText);
      }
    }
  }
);
}

Fixed version (ground truth):
private void createTextComponent(final EConnectionParameterName key,IContext defaultContext){
  GridLayout gridLayout;
  GridData gridData;
  Composite hostComposite=new Composite(mainComposite,SWT.NONE);
  gridLayout=new GridLayout();
  gridLayout.verticalSpacing=2;
  gridLayout.marginTop=5;
  gridLayout.marginBottom=2;
  gridLayout.marginHeight=0;
  gridLayout.marginWidth=0;
  gridLayout.marginLeft=0;
  gridLayout.marginRight=0;
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  hostComposite.setLayout(gridLayout);
  hostComposite.setLayoutData(gridData);
  Label hostLabel=new Label(hostComposite,SWT.NONE);
  hostLabel.setText(key.getDisplayName() + "String_Node_Str");
  GridData data=new GridData(GridData.FILL_HORIZONTAL);
  hostLabel.setLayoutData(data);
  boolean isContext=ContextParameterUtils.isContainContextParam(pvValues.get(key));
  int passStyle=SWT.BORDER;
  if ((key == EConnectionParameterName.PASSWORD) && !isContext) {
    passStyle=SWT.PASSWORD;
  }
  final Text host=new Text(hostComposite,passStyle);
  host.setText(pvValues.get(key));
  if (host.getText().trim().length() == 0) {
    host.setBackground(ColorConstants.red);
    host.redraw();
  }
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  host.setLayoutData(gridData);
  Composite contextComposite=new Composite(hostComposite,SWT.NULL);
  GridLayout naviCommonCompLayout=new GridLayout(2,false);
  naviCommonCompLayout.marginWidth=0;
  naviCommonCompLayout.marginHeight=0;
  contextComposite.setLayout(naviCommonCompLayout);
  contextComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
  contextComposite.setVisible(isContext);
  final Text hostText=new Text(contextComposite,SWT.NONE);
  hostText.setEditable(false);
  gridData=new GridData();
  hostText.setLayoutData(gridData);
  hostText.setText(CONTEXT_WITH);
  passStyle=SWT.NONE;
  if (key == EConnectionParameterName.PASSWORD) {
    passStyle=SWT.PASSWORD;
  }
  final Text hostValue=new Text(contextComposite,passStyle);
  hostValue.setEditable(false);
  gridData=new GridData(GridData.FILL_HORIZONTAL);
  hostValue.setLayoutData(gridData);
  hostValue.setText(ContextParameterUtils.parseScriptContextCode(host.getText(),defaultContext));
  host.setData(TEXT_CONTROL,hostValue);
  host.setData(key);
  allParamText.add(host);
  host.addKeyListener(new KeyAdapter(){
    @Override public void keyReleased(    KeyEvent e){
      if (isRequriedValue(key.getName())) {
        if (host.getText().trim().length() == 0) {
          host.setBackground(ColorConstants.red);
          host.redraw();
        }
 else {
          host.setBackground(ColorConstants.white);
          host.redraw();
        }
        resetValues(host,hostValue);
      }
    }
  }
);
}