Program: 45902
Project: 45902
Buggy source:
/** 
 * Creates new form ModelImporterFrame 
 */
public ModelImporterFrame(ImportSessionFrame session,File lastModelDir){
  this.lastModelDir=lastModelDir;
  sessionFrame=session;
  initComponents();
  Float value=new Float(0);
  Float min=new Float(Float.NEGATIVE_INFINITY);
  Float max=new Float(Float.POSITIVE_INFINITY);
  Float step=new Float(0.1);
  SpinnerNumberModel translationX=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel translationY=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel translationZ=new SpinnerNumberModel(value,min,max,step);
  translationXTF.setModel(translationX);
  translationYTF.setModel(translationY);
  translationZTF.setModel(translationZ);
  value=new Float(1);
  SpinnerNumberModel scaleX=new SpinnerNumberModel(value,min,max,step);
  scaleTF.setModel(scaleX);
  value=new Float(0);
  min=new Float(-360);
  max=new Float(360);
  step=new Float(1);
  SpinnerNumberModel rotationX=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel rotationY=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel rotationZ=new SpinnerNumberModel(value,min,max,step);
  rotationXTF.setModel(rotationX);
  rotationYTF.setModel(rotationY);
  rotationZTF.setModel(rotationZ);
  currentRotation.loadIdentity();
  userMotionListener=new TransformChangeListener(){
    private Vector3f look=new Vector3f();
    private Vector3f pos=new Vector3f();
    public void transformChanged(    Cell cell,    ChangeSource source){
      CellTransform t=cell.getWorldTransform();
      t.getLookAt(pos,look);
      System.err.println(pos + "String_Node_Str" + look);
      look.mult(3);
      pos.addLocal(look);
      currentTranslation.set(pos);
      ((SpinnerNumberModel)translationXTF.getModel()).setValue(new Float(pos.x));
      ((SpinnerNumberModel)translationYTF.getModel()).setValue(new Float(pos.y));
      ((SpinnerNumberModel)translationZTF.getModel()).setValue(new Float(pos.z));
      if (transformProcessor != null)       transformProcessor.setTransform(currentRotation,currentTranslation);
    }
  }
;
  translationChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)translationXTF.getModel()).getValue();
      float y=(Float)((SpinnerNumberModel)translationYTF.getModel()).getValue();
      float z=(Float)((SpinnerNumberModel)translationZTF.getModel()).getValue();
      if (x != currentTranslation.x || y != currentTranslation.y || z != currentTranslation.z) {
        currentTranslation.set(x,y,z);
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation);
      }
    }
  }
;
  rotationChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)rotationXTF.getModel()).getValue();
      float y=(Float)((SpinnerNumberModel)rotationYTF.getModel()).getValue();
      float z=(Float)((SpinnerNumberModel)rotationZTF.getModel()).getValue();
      if (x != currentRotationValues.x || y != currentRotationValues.y || z != currentRotationValues.z) {
        currentRotationValues.set(x,y,z);
        calcCurrentRotationMatrix();
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation);
      }
    }
  }
;
  ((SpinnerNumberModel)rotationXTF.getModel()).addChangeListener(rotationChangeListener);
  ((SpinnerNumberModel)rotationYTF.getModel()).addChangeListener(rotationChangeListener);
  ((SpinnerNumberModel)rotationZTF.getModel()).addChangeListener(rotationChangeListener);
  scaleChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)scaleTF.getModel()).getValue();
      if (x != currentScale.x) {
        currentScale.set(x,x,x);
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation,currentScale);
      }
    }
  }
;
  ((SpinnerNumberModel)scaleTF.getModel()).addChangeListener(scaleChangeListener);
  avatarMoveCB.setSelected(false);
  enableSpinners(true);
}

Fixed version (ground truth):
/** 
 * Creates new form ModelImporterFrame 
 */
public ModelImporterFrame(ImportSessionFrame session,File lastModelDir){
  this.lastModelDir=lastModelDir;
  sessionFrame=session;
  initComponents();
  Float value=new Float(0);
  Float min=new Float(Float.NEGATIVE_INFINITY);
  Float max=new Float(Float.POSITIVE_INFINITY);
  Float step=new Float(0.1);
  SpinnerNumberModel translationX=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel translationY=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel translationZ=new SpinnerNumberModel(value,min,max,step);
  translationXTF.setModel(translationX);
  translationYTF.setModel(translationY);
  translationZTF.setModel(translationZ);
  value=new Float(1);
  SpinnerNumberModel scaleX=new SpinnerNumberModel(value,min,max,step);
  scaleTF.setModel(scaleX);
  value=new Float(0);
  min=new Float(-360);
  max=new Float(360);
  step=new Float(1);
  SpinnerNumberModel rotationX=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel rotationY=new SpinnerNumberModel(value,min,max,step);
  SpinnerNumberModel rotationZ=new SpinnerNumberModel(value,min,max,step);
  rotationXTF.setModel(rotationX);
  rotationYTF.setModel(rotationY);
  rotationZTF.setModel(rotationZ);
  currentRotation.loadIdentity();
  userMotionListener=new TransformChangeListener(){
    private Vector3f look=new Vector3f();
    private Vector3f pos=new Vector3f();
    public void transformChanged(    Cell cell,    ChangeSource source){
      CellTransform t=cell.getWorldTransform();
      t.getLookAt(pos,look);
      look.mult(3);
      pos.addLocal(look);
      currentTranslation.set(pos);
      ((SpinnerNumberModel)translationXTF.getModel()).setValue(new Float(pos.x));
      ((SpinnerNumberModel)translationYTF.getModel()).setValue(new Float(pos.y));
      ((SpinnerNumberModel)translationZTF.getModel()).setValue(new Float(pos.z));
      if (transformProcessor != null)       transformProcessor.setTransform(currentRotation,currentTranslation);
    }
  }
;
  translationChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)translationXTF.getModel()).getValue();
      float y=(Float)((SpinnerNumberModel)translationYTF.getModel()).getValue();
      float z=(Float)((SpinnerNumberModel)translationZTF.getModel()).getValue();
      if (x != currentTranslation.x || y != currentTranslation.y || z != currentTranslation.z) {
        currentTranslation.set(x,y,z);
        importedModel.setTranslation(currentTranslation);
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation);
      }
    }
  }
;
  rotationChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)rotationXTF.getModel()).getValue();
      float y=(Float)((SpinnerNumberModel)rotationYTF.getModel()).getValue();
      float z=(Float)((SpinnerNumberModel)rotationZTF.getModel()).getValue();
      if (x != currentRotationValues.x || y != currentRotationValues.y || z != currentRotationValues.z) {
        currentRotationValues.set(x,y,z);
        importedModel.setOrientation(currentRotationValues);
        calcCurrentRotationMatrix();
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation);
      }
    }
  }
;
  ((SpinnerNumberModel)rotationXTF.getModel()).addChangeListener(rotationChangeListener);
  ((SpinnerNumberModel)rotationYTF.getModel()).addChangeListener(rotationChangeListener);
  ((SpinnerNumberModel)rotationZTF.getModel()).addChangeListener(rotationChangeListener);
  scaleChangeListener=new ChangeListener(){
    public void stateChanged(    ChangeEvent e){
      float x=(Float)((SpinnerNumberModel)scaleTF.getModel()).getValue();
      if (x != currentScale.x) {
        currentScale.set(x,x,x);
        importedModel.setScale(currentScale);
        if (transformProcessor != null)         transformProcessor.setTransform(currentRotation,currentTranslation,currentScale);
      }
    }
  }
;
  ((SpinnerNumberModel)scaleTF.getModel()).addChangeListener(scaleChangeListener);
  avatarMoveCB.setSelected(false);
  enableSpinners(true);
}