Program: 108756
Project: 108756
Buggy source:
/** 
 * Creates a new data view
 * @param parent
 * @param controller
 * @param title
 */
public ViewData(final Composite parent,final Controller controller,final String title){
  controller.addListener(ModelPart.ATTRIBUTE_TYPE,this);
  controller.addListener(ModelPart.SELECTED_ATTRIBUTE,this);
  controller.addListener(ModelPart.MODEL,this);
  controller.addListener(ModelPart.VIEW_CONFIG,this);
  this.controller=controller;
  IMAGE_INSENSITIVE=controller.getResources().getImage("String_Node_Str");
  IMAGE_SENSITIVE=controller.getResources().getImage("String_Node_Str");
  IMAGE_QUASI_IDENTIFYING=controller.getResources().getImage("String_Node_Str");
  IMAGE_IDENTIFYING=controller.getResources().getImage("String_Node_Str");
  IMAGE_ASCENDING=controller.getResources().getImage("String_Node_Str");
  IMAGE_DESCENDING=controller.getResources().getImage("String_Node_Str");
  ComponentTitleBar bar=new ComponentTitleBar("String_Node_Str");
  bar.add(Resources.getMessage("String_Node_Str"),IMAGE_ASCENDING,new Runnable(){
    @Override public void run(){
      model.getViewConfig().setSortOrder(true);
      actionSort();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),IMAGE_DESCENDING,new Runnable(){
    @Override public void run(){
      model.getViewConfig().setSortOrder(false);
      actionSort();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),controller.getResources().getImage("String_Node_Str"),new Runnable(){
    @Override public void run(){
      controller.actionDataShowGroups();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),controller.getResources().getImage("String_Node_Str"),true,new Runnable(){
    @Override public void run(){
      controller.actionDataToggleSubset();
    }
  }
);
  ComponentTitledFolder folder=new ComponentTitledFolder(parent,controller,bar,null);
  folder.setLayoutData(SWTUtil.createFillGridData());
  Composite c=folder.createItem(title,null);
  folder.setSelection(0);
  GridLayout l=new GridLayout();
  l.numColumns=1;
  c.setLayout(l);
  table=new ComponentDataTable(controller,c);
  table.addSelectionLayerListener(new ILayerListener(){
    @Override public void handleLayerEvent(    ILayerEvent arg0){
      if (arg0 instanceof CellSelectionEvent) {
        actionCellSelected((CellSelectionEvent)arg0);
      }
 else       if (arg0 instanceof ColumnSelectionEvent) {
        actionColumnSelected((ColumnSelectionEvent)arg0);
      }
    }
  }
);
  this.groupsButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.groupsButton.setEnabled(false);
  this.subsetButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.subsetButton.setEnabled(false);
}

Fixed version (ground truth):
/** 
 * Creates a new data view
 * @param parent
 * @param controller
 * @param title
 */
public ViewData(final Composite parent,final Controller controller,final String title){
  controller.addListener(ModelPart.ATTRIBUTE_TYPE,this);
  controller.addListener(ModelPart.SELECTED_ATTRIBUTE,this);
  controller.addListener(ModelPart.MODEL,this);
  controller.addListener(ModelPart.OUTPUT,this);
  controller.addListener(ModelPart.VIEW_CONFIG,this);
  controller.addListener(ModelPart.INPUT,this);
  this.controller=controller;
  IMAGE_INSENSITIVE=controller.getResources().getImage("String_Node_Str");
  IMAGE_SENSITIVE=controller.getResources().getImage("String_Node_Str");
  IMAGE_QUASI_IDENTIFYING=controller.getResources().getImage("String_Node_Str");
  IMAGE_IDENTIFYING=controller.getResources().getImage("String_Node_Str");
  IMAGE_ASCENDING=controller.getResources().getImage("String_Node_Str");
  IMAGE_DESCENDING=controller.getResources().getImage("String_Node_Str");
  ComponentTitleBar bar=new ComponentTitleBar("String_Node_Str");
  bar.add(Resources.getMessage("String_Node_Str"),IMAGE_ASCENDING,new Runnable(){
    @Override public void run(){
      model.getViewConfig().setSortOrder(true);
      actionSort();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),IMAGE_DESCENDING,new Runnable(){
    @Override public void run(){
      model.getViewConfig().setSortOrder(false);
      actionSort();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),controller.getResources().getImage("String_Node_Str"),new Runnable(){
    @Override public void run(){
      controller.actionDataShowGroups();
    }
  }
);
  bar.add(Resources.getMessage("String_Node_Str"),controller.getResources().getImage("String_Node_Str"),true,new Runnable(){
    @Override public void run(){
      controller.actionDataToggleSubset();
    }
  }
);
  ComponentTitledFolder folder=new ComponentTitledFolder(parent,controller,bar,null);
  folder.setLayoutData(SWTUtil.createFillGridData());
  Composite c=folder.createItem(title,null);
  folder.setSelection(0);
  GridLayout l=new GridLayout();
  l.numColumns=1;
  c.setLayout(l);
  table=new ComponentDataTable(controller,c);
  table.addSelectionLayerListener(new ILayerListener(){
    @Override public void handleLayerEvent(    ILayerEvent arg0){
      if (arg0 instanceof CellSelectionEvent) {
        actionCellSelected((CellSelectionEvent)arg0);
      }
 else       if (arg0 instanceof ColumnSelectionEvent) {
        actionColumnSelected((ColumnSelectionEvent)arg0);
      }
    }
  }
);
  this.groupsButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.groupsButton.setEnabled(false);
  this.subsetButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.subsetButton.setEnabled(false);
  this.ascendingButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.ascendingButton.setEnabled(false);
  this.descendingButton=folder.getBarItem(Resources.getMessage("String_Node_Str"));
  this.descendingButton.setEnabled(false);
}