Program: 58531
Project: 58531
Buggy source:
private void DrawMouseOverLabel(GL gl,float x,float y,float z,float[] fArMappingColor,float fOpacity,int iContentIndex){
  textRenderer.setColor(0,0,0,1);
  z=z + 3.0f;
  x=x + 0.1f;
  gl.glTranslatef(x,y,z);
  String sLabel="String_Node_Str";
  if (elementSelectionManager.checkStatus(ESelectionType.SELECTION,iContentIndex))   sLabel="String_Node_Str" + set.get(SELECTED_X_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex) + "String_Node_Str"+ set.get(SELECTED_Y_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex);
 else   sLabel="String_Node_Str" + set.get(SELECTED_X_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex) + "String_Node_Str"+ set.get(SELECTED_Y_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex);
  float fScaling=renderStyle.getSmallFontScalingFactor();
  if (isRenderedRemote())   fScaling*=1.5f;
  Rectangle2D bounds=textRenderer.getScaledBounds(gl,sLabel,fScaling,ScatterPlotRenderStyle.MIN_NUMBER_TEXT_SIZE);
  float boxLengh=(float)bounds.getWidth() + 0.2f;
  float boxHight=(float)bounds.getHeight();
  gl.glColor3f(1.0f,1.0f,0.0f);
  gl.glBegin(GL.GL_POLYGON);
  gl.glVertex3f(0.0f,-0.02f,-0.1f);
  gl.glVertex3f(0.0f,boxHight,-0.1f);
  gl.glVertex3f(boxLengh,boxHight,-0.1f);
  gl.glVertex3f(boxLengh,-0.02f,-0.1f);
  gl.glEnd();
  gl.glPushAttrib(GL.GL_CURRENT_BIT | GL.GL_LINE_BIT);
  textRenderer.begin3DRendering();
  textRenderer.draw3D(gl,sLabel,0,0,ScatterPlotRenderStyle.TEXT_ON_LABEL_Z,fScaling,ScatterPlotRenderStyle.MIN_AXIS_LABEL_TEXT_SIZE);
  textRenderer.end3DRendering();
  gl.glPopAttrib();
  gl.glTranslatef(-x,-y,-z);
}

Fixed version (ground truth):
private void DrawMouseOverLabel(GL gl,float x,float y,float z,float[] fArMappingColor,float fOpacity,int iContentIndex){
  textRenderer.setColor(0,0,0,1);
  x=x + 0.1f;
  gl.glTranslatef(x,y,z);
  String sLabel="String_Node_Str";
  String genLabel=idMappingManager.getID(EIDType.EXPRESSION_INDEX,EIDType.GENE_SYMBOL,iContentIndex);
  if (genLabel.equals("String_Node_Str"))   genLabel="String_Node_Str";
  if (elementSelectionManager.checkStatus(ESelectionType.SELECTION,iContentIndex))   sLabel="String_Node_Str" + genLabel + "String_Node_Str"+ +set.get(SELECTED_X_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex)+ "String_Node_Str"+ set.get(SELECTED_Y_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex);
 else   sLabel="String_Node_Str" + genLabel + "String_Node_Str"+ +set.get(SELECTED_X_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex)+ "String_Node_Str"+ set.get(SELECTED_Y_AXIS).getFloat(EDataRepresentation.RAW,iContentIndex);
  float fScaling=renderStyle.getSmallFontScalingFactor();
  if (isRenderedRemote())   fScaling*=1.5f;
  Rectangle2D bounds=textRenderer.getScaledBounds(gl,sLabel,fScaling,ScatterPlotRenderStyle.MIN_NUMBER_TEXT_SIZE);
  float boxLengh=(float)bounds.getWidth() + 0.2f;
  float boxHight=(float)bounds.getHeight();
  gl.glColor3f(1.0f,1.0f,0.0f);
  gl.glBegin(GL.GL_POLYGON);
  gl.glVertex3f(0.0f,-0.02f,-0.1f);
  gl.glVertex3f(0.0f,boxHight,-0.1f);
  gl.glVertex3f(boxLengh,boxHight,-0.1f);
  gl.glVertex3f(boxLengh,-0.02f,-0.1f);
  gl.glEnd();
  gl.glPushAttrib(GL.GL_CURRENT_BIT | GL.GL_LINE_BIT);
  textRenderer.begin3DRendering();
  textRenderer.draw3D(gl,sLabel,0,0,ScatterPlotRenderStyle.TEXT_ON_LABEL_Z,fScaling,ScatterPlotRenderStyle.MIN_AXIS_LABEL_TEXT_SIZE);
  textRenderer.end3DRendering();
  gl.glPopAttrib();
  gl.glTranslatef(-x,-y,-z);
}