Program: 148327
Project: 148327
Buggy source:
public DescAnnotationComposite(String labelName,String buttonName,FormToolkit toolkit,Composite parent,AMainPageV2 dialog,boolean isBtnRight){
  descAntionHolder=toolkit.createComposite(parent);
  descAntionHolder.setLayoutData(new GridData(SWT.FILL,SWT.RIGHT,true,true,2,1));
  GridLayout layout=new GridLayout(3,false);
  layout.marginWidth=0;
  layout.marginLeft=0;
  layout.marginTop=0;
  layout.marginHeight=0;
  layout.marginBottom=0;
  descAntionHolder.setLayout(layout);
  if (labelName != null && labelName.length() > 0) {
    Label descriptionLabel=toolkit.createLabel(descAntionHolder,labelName,SWT.NULL);
    descriptionLabel.setLayoutData(new GridData(SWT.FILL,SWT.CENTER,false,true,1,1));
  }
  if (isBtnRight) {
    descriptionText=toolkit.createText(descAntionHolder,"String_Node_Str",SWT.BORDER | SWT.MULTI);
    textGD=new GridData(SWT.FILL,SWT.FILL,true,true,1,1);
    descriptionText.setLayoutData(textGD);
    descriptionText.addModifyListener(new ModifyListener(){
      public void modifyText(      ModifyEvent e){
        if (accommodation != null && descriptionValue != null && !descriptionValue.equals(descriptionText.getText())) {
          accommodation.markDirtyWithoutCommit();
        }
        descriptionValue=descriptionText.getText();
        fillDataStore(descriptionText.getText());
      }
    }
);
    annotationButton=toolkit.createButton(descAntionHolder,"String_Node_Str",SWT.PUSH);
    annotationButton.setLayoutData(new GridData(SWT.RIGHT,SWT.CENTER,false,false,1,1));
    annotationButton.addSelectionListener(this);
    annotationButton.setImage(ImageCache.getCreatedImage(EImage.DOTS_BUTTON.getPath()));
    annotationButton.setToolTipText("String_Node_Str");
  }
 else {
    annotationButton=toolkit.createButton(descAntionHolder,"String_Node_Str",SWT.PUSH);
    annotationButton.setLayoutData(new GridData(SWT.RIGHT,SWT.CENTER,false,false,1,1));
    annotationButton.addSelectionListener(this);
    annotationButton.setImage(ImageCache.getCreatedImage(EImage.DOTS_BUTTON.getPath()));
    annotationButton.setToolTipText("String_Node_Str");
    descriptionText=toolkit.createText(descAntionHolder,"String_Node_Str",SWT.BORDER | SWT.MULTI);
    textGD=new GridData(SWT.FILL,SWT.FILL,true,true,1,1);
    descriptionText.setLayoutData(textGD);
    descriptionText.addModifyListener(new ModifyListener(){
      public void modifyText(      ModifyEvent e){
        if (accommodation != null && descriptionValue != null && !descriptionValue.equals(descriptionText.getText())) {
          accommodation.markDirtyWithoutCommit();
        }
        descriptionValue=descriptionText.getText();
        fillDataStore(descriptionText.getText());
      }
    }
);
  }
  accommodation=dialog;
  dlgTitle="String_Node_Str";
}

Fixed version (ground truth):
public DescAnnotationComposite(String labelName,String buttonName,FormToolkit toolkit,Composite parent,AMainPageV2 dialog,boolean isBtnRight){
  descAntionHolder=toolkit.createComposite(parent);
  descAntionHolder.setLayoutData(new GridData(SWT.FILL,SWT.RIGHT,true,true,2,1));
  GridLayout layout=new GridLayout(3,false);
  layout.marginWidth=0;
  layout.marginLeft=0;
  layout.marginTop=0;
  layout.marginHeight=0;
  layout.marginBottom=0;
  descAntionHolder.setLayout(layout);
  if (labelName != null && labelName.length() > 0) {
    Label descriptionLabel=toolkit.createLabel(descAntionHolder,labelName,SWT.NULL);
    descriptionLabel.setLayoutData(new GridData(SWT.FILL,SWT.CENTER,false,true,1,1));
  }
  if (isBtnRight) {
    descriptionText=toolkit.createText(descAntionHolder,"String_Node_Str",SWT.BORDER);
    textGD=new GridData(SWT.FILL,SWT.FILL,true,true,1,1);
    descriptionText.setLayoutData(textGD);
    descriptionText.addModifyListener(new ModifyListener(){
      public void modifyText(      ModifyEvent e){
        if (accommodation != null && descriptionValue != null && !descriptionValue.equals(descriptionText.getText())) {
          accommodation.markDirtyWithoutCommit();
        }
        descriptionValue=descriptionText.getText();
        fillDataStore(descriptionText.getText());
      }
    }
);
    annotationButton=toolkit.createButton(descAntionHolder,"String_Node_Str",SWT.PUSH);
    annotationButton.setLayoutData(new GridData(SWT.RIGHT,SWT.CENTER,false,false,1,1));
    annotationButton.addSelectionListener(this);
    annotationButton.setImage(ImageCache.getCreatedImage(EImage.DOTS_BUTTON.getPath()));
    annotationButton.setToolTipText("String_Node_Str");
  }
 else {
    annotationButton=toolkit.createButton(descAntionHolder,"String_Node_Str",SWT.PUSH);
    annotationButton.setLayoutData(new GridData(SWT.RIGHT,SWT.CENTER,false,false,1,1));
    annotationButton.addSelectionListener(this);
    annotationButton.setImage(ImageCache.getCreatedImage(EImage.DOTS_BUTTON.getPath()));
    annotationButton.setToolTipText("String_Node_Str");
    descriptionText=toolkit.createText(descAntionHolder,"String_Node_Str",SWT.BORDER);
    textGD=new GridData(SWT.FILL,SWT.FILL,true,true,1,1);
    descriptionText.setLayoutData(textGD);
    descriptionText.addModifyListener(new ModifyListener(){
      public void modifyText(      ModifyEvent e){
        if (accommodation != null && descriptionValue != null && !descriptionValue.equals(descriptionText.getText())) {
          accommodation.markDirtyWithoutCommit();
        }
        descriptionValue=descriptionText.getText();
        fillDataStore(descriptionText.getText());
      }
    }
);
  }
  accommodation=dialog;
  dlgTitle="String_Node_Str";
}