Program: 150669
Project: 150669
Buggy source:
public DetectQrCodeControlPanel(DetectQrCodeApp owner){
  this.owner=owner;
  bRunAgain.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      DetectQrCodeControlPanel.this.owner.reprocessImageOnly();
    }
  }
);
  imageView=new JComboBox();
  imageView.addItem("String_Node_Str");
  imageView.addItem("String_Node_Str");
  imageView.addItem("String_Node_Str");
  imageView.addActionListener(this);
  imageView.setMaximumSize(imageView.getPreferredSize());
  selectZoom=new JSpinner(new SpinnerNumberModel(1,MIN_ZOOM,MAX_ZOOM,1));
  selectZoom.addChangeListener(this);
  selectZoom.setMaximumSize(selectZoom.getPreferredSize());
  showSquares=new JCheckBox("String_Node_Str");
  showSquares.addActionListener(this);
  showSquares.setSelected(bShowSquares);
  showPositionPattern=new JCheckBox("String_Node_Str");
  showPositionPattern.setSelected(bShowPositionPattern);
  showPositionPattern.addActionListener(this);
  showContour=new JCheckBox("String_Node_Str");
  showContour.addActionListener(this);
  showContour.setSelected(bShowContour);
  threshold=new ThresholdControlPanel(owner,ThresholdType.BLOCK_OTSU);
  threshold.setRadius(15);
  threshold.setOtsuTuning(20);
  spinnerMinContourSize=new JSpinner(new SpinnerNumberModel(config.polygon.detector.minimumContour.pixels,5,10000,2));
  spinnerMinContourSize.setMaximumSize(spinnerMinContourSize.getPreferredSize());
  spinnerMinContourSize.addChangeListener(this);
  spinnerMinEdgeD=new JSpinner(new SpinnerNumberModel(config.polygon.detector.minimumEdgeIntensity,0.0,255.0,1.0));
  spinnerMinEdgeD.setMaximumSize(spinnerMinEdgeD.getPreferredSize());
  spinnerMinEdgeD.addChangeListener(this);
  spinnerMinEdgeR=new JSpinner(new SpinnerNumberModel(config.polygon.minimumRefineEdgeIntensity,0.0,255.0,1.0));
  spinnerMinEdgeR.setMaximumSize(spinnerMinEdgeR.getPreferredSize());
  spinnerMinEdgeR.addChangeListener(this);
  spinnerContourSplit=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.splitFraction,0.0,1.0,0.01));
  configureSpinnerFloat(spinnerContourSplit);
  spinnerContourMinSplit=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.minimumSideFraction,0.0,1.0,0.001));
  configureSpinnerFloat(spinnerContourMinSplit);
  spinnerContourIterations=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.iterations,1,200,1));
  spinnerContourIterations.setMaximumSize(spinnerContourIterations.getPreferredSize());
  spinnerContourIterations.addChangeListener(this);
  spinnerSplitPenalty=new JSpinner(new SpinnerNumberModel(config.polygon.detector.splitPenalty,0.0,100.0,1.0));
  configureSpinnerFloat(spinnerSplitPenalty);
  setBorder=new JCheckBox("String_Node_Str");
  setBorder.addActionListener(this);
  setBorder.setSelected(config.polygon.detector.canTouchBorder);
  setRefineContour=new JCheckBox("String_Node_Str");
  setRefineContour.addActionListener(this);
  setRefineContour.setSelected(config.polygon.refineContour);
  setRefineGray=new JCheckBox("String_Node_Str");
  setRefineGray.addActionListener(this);
  setRefineGray.setSelected(config.polygon.refineGray != null);
  setRemoveBias=new JCheckBox("String_Node_Str");
  setRemoveBias.addActionListener(this);
  setRemoveBias.setSelected(config.polygon.adjustForThresholdBias);
  spinnerLineSamples=new JSpinner(new SpinnerNumberModel(refineGray.lineSamples,5,100,1));
  spinnerLineSamples.setMaximumSize(spinnerLineSamples.getPreferredSize());
  spinnerLineSamples.addChangeListener(this);
  spinnerCornerOffset=new JSpinner(new SpinnerNumberModel(refineGray.cornerOffset,0,10,1));
  spinnerCornerOffset.setMaximumSize(spinnerCornerOffset.getPreferredSize());
  spinnerCornerOffset.addChangeListener(this);
  spinnerSampleRadius=new JSpinner(new SpinnerNumberModel(refineGray.sampleRadius,1,10,1));
  spinnerSampleRadius.setMaximumSize(spinnerCornerOffset.getPreferredSize());
  spinnerSampleRadius.addChangeListener(this);
  spinnerRefineMaxIterations=new JSpinner(new SpinnerNumberModel(refineGray.maxIterations,1,200,1));
  spinnerRefineMaxIterations.setMaximumSize(spinnerRefineMaxIterations.getPreferredSize());
  spinnerRefineMaxIterations.addChangeListener(this);
  spinnerConvergeTol=new JSpinner(new SpinnerNumberModel(refineGray.convergeTolPixels,0.0,2.0,0.005));
  configureSpinnerFloat(spinnerConvergeTol);
  spinnerMaxCornerChange=new JSpinner(new SpinnerNumberModel(refineGray.maxCornerChangePixel,0.0,50.0,1.0));
  configureSpinnerFloat(spinnerMaxCornerChange);
  addLabeled(processingTimeLabel,"String_Node_Str",this);
  addLabeled(imageSizeLabel,"String_Node_Str",this);
  add(bRunAgain);
  addLabeled(imageView,"String_Node_Str",this);
  addLabeled(selectZoom,"String_Node_Str",this);
  addAlignLeft(showSquares,this);
  addAlignLeft(showPositionPattern,this);
  addAlignLeft(showContour,this);
  add(threshold);
  addLabeled(spinnerMinContourSize,"String_Node_Str",this);
  addLabeled(spinnerMinEdgeD,"String_Node_Str",this);
  addLabeled(spinnerMinEdgeR,"String_Node_Str",this);
  addAlignLeft(setBorder,this);
  addCenterLabel("String_Node_Str",this);
  addLabeled(spinnerContourSplit,"String_Node_Str",this);
  addLabeled(spinnerContourMinSplit,"String_Node_Str",this);
  addLabeled(spinnerContourIterations,"String_Node_Str",this);
  addLabeled(spinnerSplitPenalty,"String_Node_Str",this);
  addCenterLabel("String_Node_Str",this);
  addAlignLeft(setRemoveBias,this);
  addAlignLeft(setRefineContour,this);
  addAlignLeft(setRefineGray,this);
  addLabeled(spinnerLineSamples,"String_Node_Str",this);
  addLabeled(spinnerCornerOffset,"String_Node_Str",this);
  addLabeled(spinnerSampleRadius,"String_Node_Str",this);
  addLabeled(spinnerRefineMaxIterations,"String_Node_Str",this);
  addLabeled(spinnerConvergeTol,"String_Node_Str",this);
  addLabeled(spinnerMaxCornerChange,"String_Node_Str",this);
  addVerticalGlue(this);
}

Fixed version (ground truth):
public DetectQrCodeControlPanel(DetectQrCodeApp owner){
  this.owner=owner;
  bRunAgain.addActionListener(new ActionListener(){
    @Override public void actionPerformed(    ActionEvent actionEvent){
      DetectQrCodeControlPanel.this.owner.reprocessImageOnly();
    }
  }
);
  imageView=new JComboBox();
  imageView.addItem("String_Node_Str");
  imageView.addItem("String_Node_Str");
  imageView.addItem("String_Node_Str");
  imageView.addActionListener(this);
  imageView.setMaximumSize(imageView.getPreferredSize());
  selectZoom=new JSpinner(new SpinnerNumberModel(1,MIN_ZOOM,MAX_ZOOM,1));
  selectZoom.addChangeListener(this);
  selectZoom.setMaximumSize(selectZoom.getPreferredSize());
  showSquares=new JCheckBox("String_Node_Str");
  showSquares.addActionListener(this);
  showSquares.setSelected(bShowSquares);
  showPositionPattern=new JCheckBox("String_Node_Str");
  showPositionPattern.setSelected(bShowPositionPattern);
  showPositionPattern.addActionListener(this);
  showAlignmentPattern=new JCheckBox("String_Node_Str");
  showAlignmentPattern.setSelected(bShowAlignmentPattern);
  showAlignmentPattern.addActionListener(this);
  showContour=new JCheckBox("String_Node_Str");
  showContour.addActionListener(this);
  showContour.setSelected(bShowContour);
  threshold=new ThresholdControlPanel(owner,ThresholdType.BLOCK_OTSU);
  threshold.setRadius(15);
  threshold.setOtsuTuning(20);
  spinnerMinContourSize=new JSpinner(new SpinnerNumberModel(config.polygon.detector.minimumContour.pixels,5,10000,2));
  spinnerMinContourSize.setMaximumSize(spinnerMinContourSize.getPreferredSize());
  spinnerMinContourSize.addChangeListener(this);
  spinnerMinEdgeD=new JSpinner(new SpinnerNumberModel(config.polygon.detector.minimumEdgeIntensity,0.0,255.0,1.0));
  spinnerMinEdgeD.setMaximumSize(spinnerMinEdgeD.getPreferredSize());
  spinnerMinEdgeD.addChangeListener(this);
  spinnerMinEdgeR=new JSpinner(new SpinnerNumberModel(config.polygon.minimumRefineEdgeIntensity,0.0,255.0,1.0));
  spinnerMinEdgeR.setMaximumSize(spinnerMinEdgeR.getPreferredSize());
  spinnerMinEdgeR.addChangeListener(this);
  spinnerContourSplit=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.splitFraction,0.0,1.0,0.01));
  configureSpinnerFloat(spinnerContourSplit);
  spinnerContourMinSplit=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.minimumSideFraction,0.0,1.0,0.001));
  configureSpinnerFloat(spinnerContourMinSplit);
  spinnerContourIterations=new JSpinner(new SpinnerNumberModel(config.polygon.detector.contourToPoly.iterations,1,200,1));
  spinnerContourIterations.setMaximumSize(spinnerContourIterations.getPreferredSize());
  spinnerContourIterations.addChangeListener(this);
  spinnerSplitPenalty=new JSpinner(new SpinnerNumberModel(config.polygon.detector.splitPenalty,0.0,100.0,1.0));
  configureSpinnerFloat(spinnerSplitPenalty);
  setBorder=new JCheckBox("String_Node_Str");
  setBorder.addActionListener(this);
  setBorder.setSelected(config.polygon.detector.canTouchBorder);
  setRefineContour=new JCheckBox("String_Node_Str");
  setRefineContour.addActionListener(this);
  setRefineContour.setSelected(config.polygon.refineContour);
  setRefineGray=new JCheckBox("String_Node_Str");
  setRefineGray.addActionListener(this);
  setRefineGray.setSelected(config.polygon.refineGray != null);
  setRemoveBias=new JCheckBox("String_Node_Str");
  setRemoveBias.addActionListener(this);
  setRemoveBias.setSelected(config.polygon.adjustForThresholdBias);
  spinnerLineSamples=new JSpinner(new SpinnerNumberModel(refineGray.lineSamples,5,100,1));
  spinnerLineSamples.setMaximumSize(spinnerLineSamples.getPreferredSize());
  spinnerLineSamples.addChangeListener(this);
  spinnerCornerOffset=new JSpinner(new SpinnerNumberModel(refineGray.cornerOffset,0,10,1));
  spinnerCornerOffset.setMaximumSize(spinnerCornerOffset.getPreferredSize());
  spinnerCornerOffset.addChangeListener(this);
  spinnerSampleRadius=new JSpinner(new SpinnerNumberModel(refineGray.sampleRadius,1,10,1));
  spinnerSampleRadius.setMaximumSize(spinnerCornerOffset.getPreferredSize());
  spinnerSampleRadius.addChangeListener(this);
  spinnerRefineMaxIterations=new JSpinner(new SpinnerNumberModel(refineGray.maxIterations,1,200,1));
  spinnerRefineMaxIterations.setMaximumSize(spinnerRefineMaxIterations.getPreferredSize());
  spinnerRefineMaxIterations.addChangeListener(this);
  spinnerConvergeTol=new JSpinner(new SpinnerNumberModel(refineGray.convergeTolPixels,0.0,2.0,0.005));
  configureSpinnerFloat(spinnerConvergeTol);
  spinnerMaxCornerChange=new JSpinner(new SpinnerNumberModel(refineGray.maxCornerChangePixel,0.0,50.0,1.0));
  configureSpinnerFloat(spinnerMaxCornerChange);
  addLabeled(processingTimeLabel,"String_Node_Str",this);
  addLabeled(imageSizeLabel,"String_Node_Str",this);
  add(bRunAgain);
  addLabeled(imageView,"String_Node_Str",this);
  addLabeled(selectZoom,"String_Node_Str",this);
  addAlignLeft(showSquares,this);
  addAlignLeft(showAlignmentPattern,this);
  addAlignLeft(showPositionPattern,this);
  addAlignLeft(showContour,this);
  add(threshold);
  addLabeled(spinnerMinContourSize,"String_Node_Str",this);
  addLabeled(spinnerMinEdgeD,"String_Node_Str",this);
  addLabeled(spinnerMinEdgeR,"String_Node_Str",this);
  addAlignLeft(setBorder,this);
  addCenterLabel("String_Node_Str",this);
  addLabeled(spinnerContourSplit,"String_Node_Str",this);
  addLabeled(spinnerContourMinSplit,"String_Node_Str",this);
  addLabeled(spinnerContourIterations,"String_Node_Str",this);
  addLabeled(spinnerSplitPenalty,"String_Node_Str",this);
  addCenterLabel("String_Node_Str",this);
  addAlignLeft(setRemoveBias,this);
  addAlignLeft(setRefineContour,this);
  addAlignLeft(setRefineGray,this);
  addLabeled(spinnerLineSamples,"String_Node_Str",this);
  addLabeled(spinnerCornerOffset,"String_Node_Str",this);
  addLabeled(spinnerSampleRadius,"String_Node_Str",this);
  addLabeled(spinnerRefineMaxIterations,"String_Node_Str",this);
  addLabeled(spinnerConvergeTol,"String_Node_Str",this);
  addLabeled(spinnerMaxCornerChange,"String_Node_Str",this);
  addVerticalGlue(this);
}