Program: 58624
Project: 58624
Buggy source:
/** 
 * Render the handles for the "cut off value"
 * @param gl
 */
private void renderCut(final GL gl){
  float fHeight=viewFrustum.getHeight();
  float fWidth=viewFrustum.getWidth();
  float fWidthCutOf=renderStyle.getWidthCutOff();
  gl.glPushName(pickingManager.getPickingID(iUniqueID,EPickingType.DENDROGRAM_CUT_SELECTION,1));
  if (bRenderGeneTree) {
    gl.glColor4fv(CUT_OFF_COLOR,0);
    gl.glBegin(GL.GL_QUADS);
    gl.glVertex3f(fPosCut,0,CUT_OFF_Z);
    gl.glVertex3f(fPosCut,fHeight,CUT_OFF_Z);
    gl.glVertex3f(fPosCut + fWidthCutOf,fHeight,CUT_OFF_Z);
    gl.glVertex3f(fPosCut + fWidthCutOf,0,CUT_OFF_Z);
    gl.glEnd();
    Vec3f lowerLeftCorner=new Vec3f();
    Vec3f lowerRightCorner=new Vec3f();
    Vec3f upperRightCorner=new Vec3f();
    Vec3f upperLeftCorner=new Vec3f();
    Vec3f scalingPivot=new Vec3f();
    lowerLeftCorner.set(fWidthCutOf / 2 + fPosCut - 0.05f,-0.16f,AXIS_Z);
    lowerRightCorner.set(fWidthCutOf / 2 + fPosCut + 0.05f,-0.16f,AXIS_Z);
    upperRightCorner.set(fWidthCutOf / 2 + fPosCut + 0.05f,0.04f,AXIS_Z);
    upperLeftCorner.set(fWidthCutOf / 2 + fPosCut - 0.05f,0.04f,AXIS_Z);
    scalingPivot.set(fWidthCutOf / 2 + fPosCut,-0.06f,AXIS_Z + 0.005f);
    textureManager.renderGUITexture(gl,EIconTextures.SMALL_DROP,lowerLeftCorner,lowerRightCorner,upperRightCorner,upperLeftCorner,scalingPivot,1,1,1,1,80);
  }
 else {
    gl.glColor4fv(CUT_OFF_COLOR,0);
    gl.glBegin(GL.GL_QUADS);
    gl.glVertex3f(0,fPosCut,CUT_OFF_Z);
    gl.glVertex3f(fWidth,fPosCut,CUT_OFF_Z);
    gl.glVertex3f(fWidth,fPosCut + fWidthCutOf,CUT_OFF_Z);
    gl.glVertex3f(0,fPosCut + fWidthCutOf,CUT_OFF_Z);
    gl.glEnd();
    Vec3f lowerLeftCorner=new Vec3f();
    Vec3f lowerRightCorner=new Vec3f();
    Vec3f upperRightCorner=new Vec3f();
    Vec3f upperLeftCorner=new Vec3f();
    Vec3f scalingPivot=new Vec3f();
    lowerLeftCorner.set(-0.16f,fWidthCutOf / 2 + fPosCut + 0.05f,AXIS_Z);
    lowerRightCorner.set(0.04f,fWidthCutOf / 2 + fPosCut + 0.05f,AXIS_Z);
    upperRightCorner.set(0.04f,fWidthCutOf / 2 + fPosCut - 0.05f,AXIS_Z);
    upperLeftCorner.set(-0.16f,fWidthCutOf / 2 + fPosCut - 0.05f,AXIS_Z);
    scalingPivot.set(-0.06f,fWidthCutOf / 2 + fPosCut,AXIS_Z + 0.005f);
    textureManager.renderGUITexture(gl,EIconTextures.SMALL_DROP_ROTATED,lowerLeftCorner,lowerRightCorner,upperRightCorner,upperLeftCorner,scalingPivot,1,1,1,1,80);
  }
  gl.glPopName();
}

Fixed version (ground truth):
/** 
 * Render the handles for the "cut off value"
 * @param gl
 */
private void renderCut(final GL gl){
  float fHeight=viewFrustum.getHeight();
  float fWidth=viewFrustum.getWidth();
  float fWidthCutOf=renderStyle.getWidthCutOff();
  gl.glPushName(pickingManager.getPickingID(iUniqueID,EPickingType.DENDROGRAM_CUT_SELECTION,1));
  if (bRenderGeneTree) {
    gl.glTranslatef(+fLevelWidth,0,0);
    gl.glColor4fv(CUT_OFF_COLOR,0);
    gl.glBegin(GL.GL_QUADS);
    gl.glVertex3f(fPosCut,0,CUT_OFF_Z);
    gl.glVertex3f(fPosCut,fHeight,CUT_OFF_Z);
    gl.glVertex3f(fPosCut + fWidthCutOf,fHeight,CUT_OFF_Z);
    gl.glVertex3f(fPosCut + fWidthCutOf,0,CUT_OFF_Z);
    gl.glEnd();
    Vec3f lowerLeftCorner=new Vec3f();
    Vec3f lowerRightCorner=new Vec3f();
    Vec3f upperRightCorner=new Vec3f();
    Vec3f upperLeftCorner=new Vec3f();
    Vec3f scalingPivot=new Vec3f();
    lowerLeftCorner.set(fWidthCutOf / 2 + fPosCut - 0.05f,-0.16f,AXIS_Z);
    lowerRightCorner.set(fWidthCutOf / 2 + fPosCut + 0.05f,-0.16f,AXIS_Z);
    upperRightCorner.set(fWidthCutOf / 2 + fPosCut + 0.05f,0.04f,AXIS_Z);
    upperLeftCorner.set(fWidthCutOf / 2 + fPosCut - 0.05f,0.04f,AXIS_Z);
    scalingPivot.set(fWidthCutOf / 2 + fPosCut,-0.06f,AXIS_Z + 0.005f);
    gl.glBlendFunc(GL.GL_ONE,GL.GL_ONE_MINUS_SRC_ALPHA);
    textureManager.renderGUITexture(gl,EIconTextures.SMALL_DROP,lowerLeftCorner,lowerRightCorner,upperRightCorner,upperLeftCorner,scalingPivot,1,1,1,1,80);
    gl.glBlendFunc(GL.GL_SRC_ALPHA,GL.GL_ONE_MINUS_SRC_ALPHA);
    gl.glTranslatef(-fLevelWidth,0,0);
  }
 else {
    gl.glTranslatef(0,-fLevelHeight,0);
    gl.glColor4fv(CUT_OFF_COLOR,0);
    gl.glBegin(GL.GL_QUADS);
    gl.glVertex3f(0,fPosCut,CUT_OFF_Z);
    gl.glVertex3f(fWidth,fPosCut,CUT_OFF_Z);
    gl.glVertex3f(fWidth,fPosCut + fWidthCutOf,CUT_OFF_Z);
    gl.glVertex3f(0,fPosCut + fWidthCutOf,CUT_OFF_Z);
    gl.glEnd();
    Vec3f lowerLeftCorner=new Vec3f();
    Vec3f lowerRightCorner=new Vec3f();
    Vec3f upperRightCorner=new Vec3f();
    Vec3f upperLeftCorner=new Vec3f();
    Vec3f scalingPivot=new Vec3f();
    lowerLeftCorner.set(-0.16f,fWidthCutOf / 2 + fPosCut + 0.05f,AXIS_Z);
    lowerRightCorner.set(0.04f,fWidthCutOf / 2 + fPosCut + 0.05f,AXIS_Z);
    upperRightCorner.set(0.04f,fWidthCutOf / 2 + fPosCut - 0.05f,AXIS_Z);
    upperLeftCorner.set(-0.16f,fWidthCutOf / 2 + fPosCut - 0.05f,AXIS_Z);
    scalingPivot.set(-0.06f,fWidthCutOf / 2 + fPosCut,AXIS_Z + 0.005f);
    gl.glBlendFunc(GL.GL_ONE,GL.GL_ONE_MINUS_SRC_ALPHA);
    textureManager.renderGUITexture(gl,EIconTextures.SMALL_DROP_ROTATED,lowerLeftCorner,lowerRightCorner,upperRightCorner,upperLeftCorner,scalingPivot,1,1,1,1,80);
    gl.glBlendFunc(GL.GL_SRC_ALPHA,GL.GL_ONE_MINUS_SRC_ALPHA);
    gl.glTranslatef(0,+fLevelHeight,0);
  }
  gl.glPopName();
}