Program: 66051
Project: 66051
Buggy source:
/** 
 * Populates series type list.
 * @param htSeriesNames
 * @param cmbTypes
 * @param context
 * @param allChartType
 * @param currentSeries
 */
public static void populateSeriesTypesList(Hashtable<String,Series> htSeriesNames,Combo cmbTypes,ChartWizardContext context,Collection<IChartType> allChartType,Series currentSeries){
  IChartUIHelper helper=context.getUIFactory().createUIHelper();
  IChartType currentChartType=ChartUIUtil.getChartType(context.getModel().getType());
  cmbTypes.removeAll();
  if (helper.canCombine(currentChartType,context)) {
    Orientation orientation=((ChartWithAxes)context.getModel()).getOrientation();
    Iterator<IChartType> iterTypes=allChartType.iterator();
    while (iterTypes.hasNext()) {
      IChartType type=iterTypes.next();
      Series newSeries=type.getSeries();
      if (helper.canCombine(type,context)) {
        if (newSeries instanceof AreaSeries && context.getModel().getDimension() == ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL) {
          continue;
        }
        if (!(newSeries instanceof StockSeries) || (orientation.getValue() == Orientation.VERTICAL)) {
          String sDisplayName=newSeries.getDisplayName();
          htSeriesNames.put(sDisplayName,newSeries);
          cmbTypes.add(sDisplayName);
        }
        if (type.getName().equals(context.getModel().getType())) {
          cmbTypes.select(cmbTypes.getItemCount() - 1);
        }
      }
    }
    String sDisplayName=currentSeries.getDisplayName();
    cmbTypes.setText(sDisplayName);
  }
 else {
    String seriesName=currentSeries.getDisplayName();
    cmbTypes.add(seriesName);
    cmbTypes.select(0);
  }
}

Fixed version (ground truth):
/** 
 * Populates series type list.
 * @param htSeriesNames
 * @param cmbTypes
 * @param context
 * @param allChartType
 * @param currentSeries
 */
public static void populateSeriesTypesList(Hashtable<String,Series> htSeriesNames,Combo cmbTypes,ChartWizardContext context,Collection<IChartType> allChartType,Series currentSeries){
  IChartUIHelper helper=context.getUIFactory().createUIHelper();
  IChartType currentChartType=ChartUIUtil.getChartType(context.getModel().getType());
  cmbTypes.removeAll();
  if (helper.canCombine(currentChartType,context)) {
    Orientation orientation=((ChartWithAxes)context.getModel()).getOrientation();
    Iterator<IChartType> iterTypes=allChartType.iterator();
    while (iterTypes.hasNext()) {
      IChartType type=iterTypes.next();
      Series newSeries=type.getSeries(false);
      if (helper.canCombine(type,context)) {
        if (newSeries instanceof AreaSeries && context.getModel().getDimension() == ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL) {
          continue;
        }
        if (!(newSeries instanceof StockSeries) || (orientation.getValue() == Orientation.VERTICAL)) {
          String sDisplayName=newSeries.getDisplayName();
          htSeriesNames.put(sDisplayName,newSeries);
          cmbTypes.add(sDisplayName);
        }
        if (type.getName().equals(context.getModel().getType())) {
          cmbTypes.select(cmbTypes.getItemCount() - 1);
        }
      }
    }
    String sDisplayName=currentSeries.getDisplayName();
    cmbTypes.setText(sDisplayName);
  }
 else {
    String seriesName=currentSeries.getDisplayName();
    cmbTypes.add(seriesName);
    cmbTypes.select(0);
  }
}