Program: 69436
Project: 69436
Buggy source:
public void widgetSelected(SelectionEvent e){
  Object oSource=e.getSource();
  if (oSource.equals(cmbType)) {
    fGrouping.setGroupType(DataType.getByName(LiteralHelper.dataTypeSet.getNameByDisplayName(cmbType.getText())));
    boolean bEnableUI=btnEnabled.getSelection();
    String selName=cmbType.getText();
    boolean bEnabled=isDateTimeGrouping(selName) || isTextGrouping(selName);
    resetGroupingUnitsCombo(bEnableUI);
    lblUnit.setEnabled(bEnableUI & bEnabled);
    cmbUnit.setEnabled(bEnableUI & bEnabled);
    lblInterval.setEnabled(bEnableUI);
    iscInterval.setEnabled(bEnableUI);
    if (fbAggEnabled) {
      lblAggregate.setEnabled(bEnableUI);
      cmbAggregate.setEnabled(bEnableUI);
      if (fChartContext.getChartType() instanceof StockChart) {
        ChartUIUtil.updateDefaultAggregations(fChartContext.getModel());
      }
    }
  }
 else   if (oSource.equals(cmbUnit)) {
    fGrouping.setGroupingUnit(GroupingUnitType.getByName(LiteralHelper.groupingUnitTypeSet.getNameByDisplayName(cmbUnit.getText())));
  }
 else   if (oSource.equals(cmbAggregate)) {
    int idx=cmbAggregate.getSelectionIndex();
    String aggExpr=null;
    if (idx >= 0) {
      String[] names=(String[])cmbAggregate.getData();
      aggExpr=names[idx];
    }
    showAggregateParameters(aggExpr);
    getShell().pack();
    fGrouping.setAggregateExpression(aggExpr);
  }
 else   if (oSource.equals(btnEnabled)) {
    fGrouping.setEnabled(btnEnabled.getSelection());
    setButtonsStatus();
    populateLists();
    populateAggParameters();
    String aggFuncName=null;
    try {
      aggFuncName=((String[])cmbAggregate.getData())[cmbAggregate.getSelectionIndex()];
    }
 catch (    Exception e1) {
      ;
    }
    showAggregateParameters(aggFuncName);
    getShell().pack();
  }
 else   if (oSource.equals(iscInterval)) {
    fGrouping.setGroupingInterval(Double.valueOf(iscInterval.getText()).doubleValue());
  }
 else   if (isAggParametersWidget(oSource)) {
    setAggParameter((Text)oSource);
  }
 else   if (isBuilderBtnWidget(oSource)) {
    try {
      Text txtArg=fExprBuilderWidgetsMap.get(oSource);
      String sExpr=fChartContext.getUIServiceProvider().invoke(IUIServiceProvider.COMMAND_EXPRESSION_DATA_BINDINGS,txtArg.getText(),fChartContext.getExtendedItem(),fTitle);
      txtArg.setText(sExpr);
      setAggParameter(txtArg);
    }
 catch (    ChartException e1) {
      WizardBase.displayException(e1);
    }
  }
}

Fixed version (ground truth):
public void widgetSelected(SelectionEvent e){
  Object oSource=e.getSource();
  if (oSource.equals(cmbType)) {
    fGrouping.setGroupType(DataType.getByName(LiteralHelper.dataTypeSet.getNameByDisplayName(cmbType.getText())));
    boolean bEnableUI=btnEnabled.getSelection();
    String selName=cmbType.getText();
    boolean bEnabled=isDateTimeGrouping(selName) || isTextGrouping(selName);
    resetGroupingUnitsCombo(bEnableUI);
    lblUnit.setEnabled(bEnableUI & bEnabled);
    cmbUnit.setEnabled(bEnableUI & bEnabled);
    lblInterval.setEnabled(bEnableUI);
    iscInterval.setEnabled(bEnableUI);
    if (fbAggEnabled) {
      lblAggregate.setEnabled(bEnableUI);
      cmbAggregate.setEnabled(bEnableUI);
      if (fChartContext.getChartType() instanceof StockChart && fGrouping.getGroupType().getValue() == DataType.DATE_TIME) {
        ChartUIUtil.updateDefaultAggregations(fChartContext.getModel());
      }
    }
  }
 else   if (oSource.equals(cmbUnit)) {
    fGrouping.setGroupingUnit(GroupingUnitType.getByName(LiteralHelper.groupingUnitTypeSet.getNameByDisplayName(cmbUnit.getText())));
  }
 else   if (oSource.equals(cmbAggregate)) {
    int idx=cmbAggregate.getSelectionIndex();
    String aggExpr=null;
    if (idx >= 0) {
      String[] names=(String[])cmbAggregate.getData();
      aggExpr=names[idx];
    }
    showAggregateParameters(aggExpr);
    getShell().pack();
    fGrouping.setAggregateExpression(aggExpr);
  }
 else   if (oSource.equals(btnEnabled)) {
    fGrouping.setEnabled(btnEnabled.getSelection());
    setButtonsStatus();
    populateLists();
    populateAggParameters();
    String aggFuncName=null;
    try {
      aggFuncName=((String[])cmbAggregate.getData())[cmbAggregate.getSelectionIndex()];
    }
 catch (    Exception e1) {
      ;
    }
    showAggregateParameters(aggFuncName);
    getShell().pack();
  }
 else   if (oSource.equals(iscInterval)) {
    fGrouping.setGroupingInterval(Double.valueOf(iscInterval.getText()).doubleValue());
  }
 else   if (isAggParametersWidget(oSource)) {
    setAggParameter((Text)oSource);
  }
 else   if (isBuilderBtnWidget(oSource)) {
    try {
      Text txtArg=fExprBuilderWidgetsMap.get(oSource);
      String sExpr=fChartContext.getUIServiceProvider().invoke(IUIServiceProvider.COMMAND_EXPRESSION_DATA_BINDINGS,txtArg.getText(),fChartContext.getExtendedItem(),fTitle);
      txtArg.setText(sExpr);
      setAggParameter(txtArg);
    }
 catch (    ChartException e1) {
      WizardBase.displayException(e1);
    }
  }
}