Program: 66307
Project: 66307
Buggy source:
public boolean performDrop(Object transfer,Object target,int operation,DNDLocation location){
  if (target instanceof EditPart) {
    EditPart editPart=(EditPart)target;
    CommandStack stack=SessionHandleAdapter.getInstance().getCommandStack();
    if (DesignerPaletteFactory.TIMEPERIOD_TEMPLATE.equals(DesignerPaletteFactory.TIMEPERIOD_TEMPLATE)) {
      stack.startTrans("String_Node_Str");
    }
 else {
      stack.startTrans("String_Node_Str");
    }
    DataItemHandle dataHandle=DesignElementFactory.getInstance().newDataItem(null);
    CrosstabCellHandle cellHandle=((CrosstabCellAdapter)((CrosstabCellEditPart)target).getModel()).getCrosstabCellHandle();
    try {
      cellHandle.addContent(dataHandle,CellHandle.CONTENT_SLOT);
      DataColumnBindingDialog dialog=new DataColumnBindingDialog(true);
      dialog.setInput(dataHandle,null,cellHandle);
      dialog.setAggreate(true);
      if (DesignerPaletteFactory.TIMEPERIOD_TEMPLATE.equals(DesignerPaletteFactory.TIMEPERIOD_TEMPLATE)) {
        dialog.setTimePeriod(true);
      }
      if (dialog.open() == Window.OK) {
        CreateRequest request=new CreateRequest();
        request.getExtendedData().put(DesignerConstants.KEY_NEWOBJECT,dataHandle);
        request.setLocation(location.getPoint());
        Command command=editPart.getCommand(request);
        if (command != null && command.canExecute()) {
          dataHandle.setResultSetColumn(dialog.getBindingColumn().getName());
          editPart.getViewer().getEditDomain().getCommandStack().execute(command);
          stack.commit();
        }
 else {
          stack.rollback();
        }
      }
 else {
        stack.rollback();
      }
    }
 catch (    Exception e) {
      stack.rollback();
      ExceptionUtil.handle(e);
    }
  }
  return true;
}

Fixed version (ground truth):
public boolean performDrop(Object transfer,Object target,int operation,DNDLocation location){
  if (target instanceof EditPart) {
    EditPart editPart=(EditPart)target;
    CommandStack stack=SessionHandleAdapter.getInstance().getCommandStack();
    if (DesignerPaletteFactory.TIMEPERIOD_TEMPLATE.equals(transfer)) {
      stack.startTrans("String_Node_Str");
    }
 else {
      stack.startTrans("String_Node_Str");
    }
    DataItemHandle dataHandle=DesignElementFactory.getInstance().newDataItem(null);
    CrosstabCellHandle cellHandle=((CrosstabCellAdapter)((CrosstabCellEditPart)target).getModel()).getCrosstabCellHandle();
    try {
      cellHandle.addContent(dataHandle,CellHandle.CONTENT_SLOT);
      DataColumnBindingDialog dialog=new DataColumnBindingDialog(true);
      dialog.setInput(dataHandle,null,cellHandle);
      dialog.setAggreate(true);
      if (DesignerPaletteFactory.TIMEPERIOD_TEMPLATE.equals(transfer)) {
        dialog.setTimePeriod(true);
      }
      if (dialog.open() == Window.OK) {
        CreateRequest request=new CreateRequest();
        request.getExtendedData().put(DesignerConstants.KEY_NEWOBJECT,dataHandle);
        request.setLocation(location.getPoint());
        Command command=editPart.getCommand(request);
        if (command != null && command.canExecute()) {
          dataHandle.setResultSetColumn(dialog.getBindingColumn().getName());
          editPart.getViewer().getEditDomain().getCommandStack().execute(command);
          stack.commit();
        }
 else {
          stack.rollback();
        }
      }
 else {
        stack.rollback();
      }
    }
 catch (    Exception e) {
      stack.rollback();
      ExceptionUtil.handle(e);
    }
  }
  return true;
}