Program: 66778
Project: 66778
Buggy source:
public void actionPerformed(ActionEvent e){
  int i=jcbModels.getSelectedIndex();
  cm=PrimitiveCharts.createChart(i);
  if (cm instanceof ChartWithAxes) {
    boolean bStockChart=i == 7;
    boolean bBubbleChart=i == 10;
    jcbTransposed.setEnabled(!bStockChart);
    if (bStockChart) {
      jcbTransposed.setSelected(false);
    }
    jcbLogarithmic.setEnabled(!bBubbleChart);
    if (bBubbleChart) {
      jcbLogarithmic.setSelected(false);
    }
    jcbPercent.setEnabled(true);
    ChartWithAxes cwa=((ChartWithAxes)cm);
    cwa.setTransposed(jcbTransposed.isSelected());
    Axis ax=cwa.getPrimaryOrthogonalAxis(cwa.getPrimaryBaseAxes()[0]);
    if (jcbLogarithmic.isSelected()) {
      if (ax.getType() == AxisType.LINEAR_LITERAL) {
        ax.setType(AxisType.LOGARITHMIC_LITERAL);
      }
    }
 else {
      if (ax.getType() == AxisType.LOGARITHMIC_LITERAL) {
        ax.setType(AxisType.LINEAR_LITERAL);
      }
    }
    if (jcbPercent.isSelected() == true) {
      ax.setFormatSpecifier(JavaNumberFormatSpecifierImpl.create("String_Node_Str"));
    }
 else {
      ax.setFormatSpecifier(null);
    }
  }
 else   if (cm instanceof ChartWithoutAxes) {
    jcbTransposed.setEnabled(false);
    jcbLogarithmic.setEnabled(false);
    jcbPercent.setEnabled(false);
  }
  if (jcbModels.getSelectedIndex() == 7 || jcbModels.getSelectedIndex() == 6 || jcbModels.getSelectedIndex() == 9) {
    cm.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
  }
 else {
switch (jcbDimensions.getSelectedIndex()) {
case 0:
      cm.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
    break;
case 1:
  cm.setDimension(ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL);
break;
}
}
bNeedsGeneration=true;
scv.repaint();
}

Fixed version (ground truth):
public void actionPerformed(ActionEvent e){
  int i=jcbModels.getSelectedIndex();
  cm=PrimitiveCharts.createChart(i);
  if (cm instanceof ChartWithAxes) {
    jcbPercent.setEnabled(true);
    ChartWithAxes cwa=((ChartWithAxes)cm);
    cwa.setTransposed(jcbTransposed.isSelected());
    Axis ax=cwa.getPrimaryOrthogonalAxis(cwa.getPrimaryBaseAxes()[0]);
    if (jcbLogarithmic.isSelected()) {
      if (ax.getType() == AxisType.LINEAR_LITERAL) {
        ax.setType(AxisType.LOGARITHMIC_LITERAL);
      }
    }
 else {
      if (ax.getType() == AxisType.LOGARITHMIC_LITERAL) {
        ax.setType(AxisType.LINEAR_LITERAL);
      }
    }
    if (jcbPercent.isSelected() == true) {
      ax.setFormatSpecifier(JavaNumberFormatSpecifierImpl.create("String_Node_Str"));
    }
 else {
      ax.setFormatSpecifier(null);
    }
  }
 else   if (cm instanceof ChartWithoutAxes) {
    jcbTransposed.setEnabled(false);
    jcbLogarithmic.setEnabled(false);
    jcbPercent.setEnabled(false);
  }
  if (jcbModels.getSelectedIndex() == 7 || jcbModels.getSelectedIndex() == 6 || jcbModels.getSelectedIndex() == 9) {
    cm.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
  }
 else {
switch (jcbDimensions.getSelectedIndex()) {
case 0:
      cm.setDimension(ChartDimension.TWO_DIMENSIONAL_LITERAL);
    break;
case 1:
  cm.setDimension(ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL);
break;
}
}
bNeedsGeneration=true;
scv.repaint();
}