Program: 69117
Project: 69117
Buggy source:
public Chart getModel(String sSubType,Orientation orientation,String sDimension,Chart currentChart){
  ChartWithAxes newChart=null;
  if (currentChart != null) {
    newChart=(ChartWithAxes)getConvertedChart(currentChart,sSubType,orientation,sDimension);
    if (newChart != null) {
      return newChart;
    }
  }
  newChart=ChartWithAxesImpl.create();
  newChart.setType(TYPE_LITERAL);
  newChart.setSubType(sSubType);
  newChart.setOrientation(orientation);
  newChart.setDimension(getDimensionFor(sDimension));
  newChart.setUnits("String_Node_Str");
  ((Axis)newChart.getAxes().get(0)).setOrientation(Orientation.HORIZONTAL_LITERAL);
  ((Axis)newChart.getAxes().get(0)).setType(AxisType.LINEAR_LITERAL);
  ((Axis)newChart.getAxes().get(0)).setCategoryAxis(false);
  SeriesDefinition sdX=SeriesDefinitionImpl.create();
  Series baseSeries=SeriesImpl.create();
  sdX.getSeries().add(baseSeries);
  sdX.getSeriesPalette().shift(0);
  ((Axis)newChart.getAxes().get(0)).getSeriesDefinitions().add(sdX);
  newChart.getTitle().getLabel().getCaption().setValue(CHART_TITLE);
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).setOrientation(Orientation.VERTICAL_LITERAL);
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).setType(AxisType.LINEAR_LITERAL);
  SeriesDefinition sdY=SeriesDefinitionImpl.create();
  sdY.getSeriesPalette().shift(0);
  Series orthogonalSeries=BubbleSeriesImpl.create();
  ((BubbleSeries)orthogonalSeries).setStacked(false);
  sdY.getSeries().add(orthogonalSeries);
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).getSeriesDefinitions().add(sdY);
  if (sSubType.equalsIgnoreCase(STANDARD_SUBTYPE_LITERAL)) {
    newChart.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
  }
  addSampleData(newChart);
  return newChart;
}

Fixed version (ground truth):
public Chart getModel(String sSubType,Orientation orientation,String sDimension,Chart currentChart){
  ChartWithAxes newChart=null;
  if (currentChart != null) {
    newChart=(ChartWithAxes)getConvertedChart(currentChart,sSubType,orientation,sDimension);
    if (newChart != null) {
      return newChart;
    }
  }
  newChart=ChartWithAxesImpl.create();
  newChart.setType(TYPE_LITERAL);
  newChart.setSubType(sSubType);
  newChart.setOrientation(orientation);
  newChart.setDimension(getDimensionFor(sDimension));
  newChart.setUnits("String_Node_Str");
  ((Axis)newChart.getAxes().get(0)).setOrientation(Orientation.HORIZONTAL_LITERAL);
  ((Axis)newChart.getAxes().get(0)).setType(AxisType.LINEAR_LITERAL);
  ((Axis)newChart.getAxes().get(0)).setCategoryAxis(false);
  SeriesDefinition sdX=SeriesDefinitionImpl.create();
  Series baseSeries=SeriesImpl.create();
  sdX.getSeries().add(baseSeries);
  sdX.getSeriesPalette().shift(0);
  ((Axis)newChart.getAxes().get(0)).getSeriesDefinitions().add(sdX);
  newChart.getTitle().getLabel().getCaption().setValue(getDefaultTitle());
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).setOrientation(Orientation.VERTICAL_LITERAL);
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).setType(AxisType.LINEAR_LITERAL);
  SeriesDefinition sdY=SeriesDefinitionImpl.create();
  sdY.getSeriesPalette().shift(0);
  Series orthogonalSeries=BubbleSeriesImpl.create();
  ((BubbleSeries)orthogonalSeries).setStacked(false);
  sdY.getSeries().add(orthogonalSeries);
  ((Axis)((Axis)newChart.getAxes().get(0)).getAssociatedAxes().get(0)).getSeriesDefinitions().add(sdY);
  if (sSubType.equalsIgnoreCase(STANDARD_SUBTYPE_LITERAL)) {
    newChart.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
  }
  addSampleData(newChart);
  return newChart;
}