Program: 65159
Project: 65159
Buggy source:
public void run(){
  if (measureViewHandle != null) {
    reportHandle=measureViewHandle.getCrosstab();
  }
  reportHandle.getModuleHandle().getCommandStack().startTrans(Messages.getString("String_Node_Str"));
  DataColumnBindingDialog dialog=new DataColumnBindingDialog(true);
  dialog.setInput((ReportItemHandle)reportHandle.getModelHandle());
  dialog.setAggreate(true);
  dialog.setTimePeriod(true);
  if (dialog.open() == Dialog.OK) {
    int index=caleIndex();
    try {
      ComputedColumnHandle bindingHandle=dialog.getBindingColumn();
      ComputedMeasureViewHandle computedMeasure=reportHandle.insertComputedMeasure(bindingHandle.getName(),index);
      computedMeasure.addHeader();
      ExtendedItemHandle crosstabModelHandle=(ExtendedItemHandle)reportHandle.getModelHandle();
      if (bindingHandle == null) {
        reportHandle.getModuleHandle().getCommandStack().rollbackAll();
        return;
      }
      DataItemHandle dataHandle=DesignElementFactory.getInstance().newDataItem(bindingHandle.getName());
      CrosstabAdaptUtil.formatDataItem(computedMeasure.getCubeMeasure(),dataHandle);
      dataHandle.setResultSetColumn(bindingHandle.getName());
      AggregationCellHandle cell=computedMeasure.getCell();
      if (ICrosstabConstants.MEASURE_DIRECTION_HORIZONTAL.equals(reportHandle.getMeasureDirection())) {
        CrosstabCellHandle cellHandle=computedMeasure.getHeader();
        if (cellHandle == null) {
          cellHandle=cell;
        }
        String defaultUnit=reportHandle.getModelHandle().getModuleHandle().getDefaultUnits();
      }
      cell.addContent(dataHandle);
    }
 catch (    SemanticException e) {
      reportHandle.getModuleHandle().getCommandStack().rollbackAll();
    }
  }
  reportHandle.getModuleHandle().getCommandStack().commit();
}

Fixed version (ground truth):
public void run(){
  if (measureViewHandle != null) {
    reportHandle=measureViewHandle.getCrosstab();
  }
  reportHandle.getModuleHandle().getCommandStack().startTrans(Messages.getString("String_Node_Str"));
  DataColumnBindingDialog dialog=new DataColumnBindingDialog(true);
  dialog.setInput((ReportItemHandle)reportHandle.getModelHandle());
  dialog.setAggreate(true);
  dialog.setTimePeriod(true);
  if (dialog.open() == Dialog.OK) {
    int index=caleIndex();
    try {
      ComputedColumnHandle bindingHandle=dialog.getBindingColumn();
      ComputedMeasureViewHandle computedMeasure=reportHandle.insertComputedMeasure(bindingHandle.getName(),index);
      computedMeasure.addHeader();
      ExtendedItemHandle crosstabModelHandle=(ExtendedItemHandle)reportHandle.getModelHandle();
      if (bindingHandle == null) {
        reportHandle.getModuleHandle().getCommandStack().rollbackAll();
        return;
      }
      DataItemHandle dataHandle=DesignElementFactory.getInstance().newDataItem(bindingHandle.getName());
      CrosstabAdaptUtil.formatDataItem(computedMeasure.getCubeMeasure(),dataHandle);
      dataHandle.setResultSetColumn(bindingHandle.getName());
      AggregationCellHandle cell=computedMeasure.getCell();
      if (ICrosstabConstants.MEASURE_DIRECTION_HORIZONTAL.equals(reportHandle.getMeasureDirection())) {
        CrosstabCellHandle cellHandle=computedMeasure.getHeader();
        if (cellHandle == null) {
          cellHandle=cell;
        }
        String defaultUnit=reportHandle.getModelHandle().getModuleHandle().getDefaultUnits();
      }
      cell.addContent(dataHandle);
      reportHandle.getModuleHandle().getCommandStack().commit();
    }
 catch (    SemanticException e) {
      reportHandle.getModuleHandle().getCommandStack().rollbackAll();
      return;
    }
  }
 else {
    reportHandle.getModuleHandle().getCommandStack().rollbackAll();
  }
}