Program: 56946
Project: 56946
Buggy source:
@Override protected void createSpecificFilterUI(Composite composite){
  Composite buttonComposite=new Composite(composite,SWT.RIGHT);
  GridData data=new GridData(SWT.LEFT,SWT.TOP,false,false);
  data.horizontalSpan=2;
  buttonComposite.setLayoutData(data);
  GridLayout layout=new GridLayout(3,false);
  layout.marginHeight=0;
  layout.marginWidth=0;
  layout.verticalSpacing=0;
{
    Label label=new Label(buttonComposite,SWT.WRAP);
    label.setText("String_Node_Str");
    data=new GridData(SWT.LEFT,SWT.TOP,false,false);
    data.horizontalSpan=2;
    label.setLayoutData(data);
    label.setFont(composite.getFont());
    Button selectButton=new Button(buttonComposite,SWT.PUSH);
    selectButton.setText("String_Node_Str");
    SelectionListener listener=new SelectionAdapter(){
      @Override public void widgetSelected(      SelectionEvent e){
        Object[] viewerElements=ArrayContentProvider.getInstance().getElements(metaData.keySet());
        fViewer.setCheckedElements(viewerElements);
      }
    }
;
    selectButton.addSelectionListener(listener);
    Button deselectButton=new Button(buttonComposite,SWT.PUSH);
    selectButton.setText("String_Node_Str");
    listener=new SelectionAdapter(){
      @Override public void widgetSelected(      SelectionEvent e){
        fViewer.setCheckedElements(new Object[0]);
      }
    }
;
    deselectButton.addSelectionListener(listener);
  }
  CheckboxTreeViewer treeViewer=createTreeViewer(composite);
  treeViewer.setCheckedElements(selection.toArray());
  data=new GridData(GridData.FILL_BOTH);
  data.widthHint=getCharWith(composite,60);
  data.heightHint=getCharHeight(composite) * 10;
  data.horizontalSpan=2;
  Tree treeWidget=treeViewer.getTree();
  treeWidget.setLayoutData(data);
  treeWidget.setFont(composite.getFont());
  createApplyGlobally(composite);
  addOKButton(composite,true);
}

Fixed version (ground truth):
@Override protected void createSpecificFilterUI(Composite composite){
  Composite buttonComposite=new Composite(composite,SWT.NONE);
  GridData data=new GridData(SWT.FILL,SWT.TOP,true,false);
  data.horizontalSpan=2;
  buttonComposite.setLayoutData(data);
  GridLayout layout=new GridLayout(3,false);
  layout.marginHeight=0;
  layout.marginWidth=0;
  layout.verticalSpacing=0;
  buttonComposite.setLayout(layout);
{
    Label label=new Label(buttonComposite,SWT.WRAP);
    label.setText("String_Node_Str");
    data=new GridData(SWT.LEFT,SWT.CENTER,true,false);
    data.horizontalSpan=1;
    label.setLayoutData(data);
    label.setFont(composite.getFont());
    Button selectButton=new Button(buttonComposite,SWT.PUSH);
    selectButton.setText("String_Node_Str");
    SelectionListener listener=new SelectionAdapter(){
      @Override public void widgetSelected(      SelectionEvent e){
        Object[] viewerElements=ArrayContentProvider.getInstance().getElements(metaData.keySet());
        fViewer.setCheckedElements(viewerElements);
      }
    }
;
    selectButton.setLayoutData(new GridData(SWT.RIGHT,SWT.TOP,false,false));
    selectButton.addSelectionListener(listener);
    Button deselectButton=new Button(buttonComposite,SWT.PUSH);
    deselectButton.setText("String_Node_Str");
    listener=new SelectionAdapter(){
      @Override public void widgetSelected(      SelectionEvent e){
        fViewer.setCheckedElements(new Object[0]);
      }
    }
;
    deselectButton.setLayoutData(new GridData(SWT.RIGHT,SWT.TOP,false,false));
    deselectButton.addSelectionListener(listener);
  }
  buttonComposite.pack();
  CheckboxTreeViewer treeViewer=createTreeViewer(composite);
  treeViewer.setCheckedElements(selection.toArray());
  data=new GridData(GridData.FILL_BOTH);
  data.widthHint=getCharWith(composite,60);
  data.heightHint=getCharHeight(composite) * 10;
  data.horizontalSpan=2;
  Tree treeWidget=treeViewer.getTree();
  treeWidget.setLayoutData(data);
  treeWidget.setFont(composite.getFont());
  createApplyGlobally(composite);
  addOKButton(composite,true);
}