Program: 136762
Project: 136762
Buggy source:
private void initializeGrid(){
  createIndicatorLabelColumn();
  createRowSelectColumn();
  for (  ModelElementIndicator _modelElementIndicator : _modelElementIndicators) {
    final GridColumn newCol=new GridColumn(this,SWT.CHECK);
    AbstractColumnHerderRenderer headerRenderer=getColumnHeaderRenderer();
    headerRenderer.setRotation(COLUMN_HEADER_ROTATION);
    newCol.setHeaderRenderer(headerRenderer);
    newCol.setCellRenderer(getCellRenderer());
    newCol.setText(ModelElementIndicatorHelper.getModelElementDisplayName(_modelElementIndicator));
    newCol.setWidth(COLUMN_WIDTH);
    newCol.setData(_modelElementIndicator);
    newCol.setMoveable(true);
    newCol.setResizeable(true);
    newCol.setHeaderFont(font);
    IRepositoryNode repNode=_modelElementIndicator.getModelElementRepositoryNode();
    if (repNode instanceof DBColumnRepNode && ((DBColumnRepNode)repNode).isKey()) {
      newCol.setImage(pkImage);
    }
    newCol.addListener(SWT.Resize,new Listener(){
      public void handleEvent(      Event event){
        notifyObservers(event);
      }
    }
);
    newCol.addListener(SWT.Move,new Listener(){
      public void handleEvent(      Event event){
        notifyObservers(event);
      }
    }
);
  }
  recalculateHeader();
  createTableContent();
  setHeaderVisible(true);
  setTopLeftRenderer(new TdTopLeftRenderer());
  setEmptyColumnHeaderRenderer(new TdEmptyColumnHeaderRenderer());
  setEmptyRowHeaderRenderer(new TdEmptyCellRenderer());
  setEmptyCellRenderer(new TdEmptyCellRenderer());
  TdRowHeaderRenderer rowHeaderRenderer=new TdRowHeaderRenderer();
  setRowHeaderRenderer(rowHeaderRenderer);
  rowHeaderRenderer.setTree(true);
  rowHeaderRenderer.setWordWrap(false);
  setRowHeaderVisible(true);
  setLinesVisible(true);
  setColumnScrolling(true);
  setSelectionEnabled(false);
  setCellSelectionEnabled(false);
  setRowsResizeable(false);
  setItemHeight(21);
  setLineColor(IndicatorSelectGrid.lightBlue);
  setFocusRenderer(null);
  for (  GridItem gridItem : getItems()) {
    gridItem.setBackground(0,gray);
  }
}

Fixed version (ground truth):
protected void initializeGrid(){
  createIndicatorLabelColumn();
  createRowSelectColumn();
  for (int index=0; index < _modelElementIndicators.length; index++) {
    ModelElementIndicator _modelElementIndicator=_modelElementIndicators[index];
    final GridColumn newCol=new GridColumn(this,SWT.CHECK);
    AbstractColumnHerderRenderer headerRenderer=getColumnHeaderRenderer();
    headerRenderer.setRotation(COLUMN_HEADER_ROTATION);
    newCol.setHeaderRenderer(headerRenderer);
    newCol.setCellRenderer(getCellRenderer());
    newCol.setText(ModelElementIndicatorHelper.getModelElementDisplayName(_modelElementIndicator));
    newCol.setWidth(getPreferWidth(index));
    newCol.setData(_modelElementIndicator);
    newCol.setMoveable(true);
    newCol.setResizeable(true);
    newCol.setHeaderFont(font);
    IRepositoryNode repNode=_modelElementIndicator.getModelElementRepositoryNode();
    if (repNode instanceof DBColumnRepNode && ((DBColumnRepNode)repNode).isKey()) {
      newCol.setImage(pkImage);
    }
    newCol.addListener(SWT.Resize,new Listener(){
      public void handleEvent(      Event event){
        notifyObservers(event);
      }
    }
);
    newCol.addListener(SWT.Move,new Listener(){
      public void handleEvent(      Event event){
        notifyObservers(event);
      }
    }
);
  }
  recalculateHeader();
  createTableContent();
  setHeaderVisible(true);
  setTopLeftRenderer(new TdTopLeftRenderer());
  setEmptyColumnHeaderRenderer(new TdEmptyColumnHeaderRenderer());
  setEmptyRowHeaderRenderer(new TdEmptyCellRenderer());
  setEmptyCellRenderer(new TdEmptyCellRenderer());
  TdRowHeaderRenderer rowHeaderRenderer=new TdRowHeaderRenderer();
  setRowHeaderRenderer(rowHeaderRenderer);
  rowHeaderRenderer.setTree(true);
  rowHeaderRenderer.setWordWrap(false);
  setRowHeaderVisible(true);
  setLinesVisible(true);
  setColumnScrolling(true);
  setSelectionEnabled(false);
  setCellSelectionEnabled(false);
  setRowsResizeable(false);
  setItemHeight(21);
  setLineColor(IndicatorSelectGrid.lightBlue);
  setFocusRenderer(null);
  for (  GridItem gridItem : getItems()) {
    gridItem.setBackground(0,gray);
  }
}