Program: 11442
Project: 11442
Buggy source:
@Override public ColorAxisPlot2D getLayout(){
  ColorAxisPlot2D plot=new ColorAxisPlot2D();
  plot.setPlotBackgroundColor(GlimpseColor.getBlack());
  plot.setBackgroundColor(GlimpseColor.getBlack());
  plot.setAxisColor(GlimpseColor.getWhite());
  plot.getGridPainter().setLineColor(GlimpseColor.getWhite(0.5f));
  plot.setAxisLabelX("String_Node_Str");
  plot.setAxisLabelY("String_Node_Str");
  plot.setAxisLabelZ("String_Node_Str");
  plot.setTitle("String_Node_Str");
  plot.setTitleColor(GlimpseColor.getWhite());
  plot.getCrosshairPainter().setCursorColor(GlimpseColor.getGreen(0.2f));
  plot.getCrosshairPainter().setShadeColor(GlimpseColor.getGreen(0.05f));
  plot.getCrosshairPainter().setShadeSelectionBox(true);
  plot.getCrosshairPainter().setLineWidth(1);
  plot.setMinX(-1.2);
  plot.setMaxX(1.2);
  plot.setMinY(-1.2);
  plot.setMaxY(1.2);
  plot.setMinZ(0);
  plot.setMaxZ(1000);
  plot.lockAspectRatioXY(1);
  final ShadedTexturePainter painter=new ShadedTexturePainter();
  plot.addPainter(painter);
  ColorTexture1D colors=new ColorTexture1D(1024);
  colors.setColorGradient(ColorGradients.jet);
  final int dataTextureUnit=0;
  final int colorScaleTextureUnit=1;
  painter.addNonDrawableTexture(colors,colorScaleTextureUnit);
  SampledColorScaleShader shader;
  try {
    shader=new SampledColorScaleShader(plot.getAxisZ(),dataTextureUnit,colorScaleTextureUnit);
  }
 catch (  IOException e) {
    e.printStackTrace();
    throw new RuntimeException(e);
  }
  painter.setPipeline(new Pipeline("String_Node_Str",null,null,shader));
  new Thread(new Runnable(){
    @Override public void run(){
      FloatTexture2D data=setupTexture();
      MutatorFloat2D mutator=setupMutator(data);
      painter.addDrawableTexture(data,dataTextureUnit);
      while (true) {
        data.mutate(mutator);
        try {
          Thread.sleep(40);
        }
 catch (        InterruptedException e) {
        }
      }
    }
  }
).start();
  plot.setColorScale(colors);
  plot.addPainter(new BorderPainter());
  plot.addPainter(new FpsPainter());
  return plot;
}

Fixed version (ground truth):
@Override public ColorAxisPlot2D getLayout(){
  ColorAxisPlot2D plot=new ColorAxisPlot2D();
  plot.setPlotBackgroundColor(GlimpseColor.getBlack());
  plot.setBackgroundColor(GlimpseColor.getBlack());
  plot.setAxisColor(GlimpseColor.getWhite());
  plot.getGridPainter().setLineColor(GlimpseColor.getWhite(0.5f));
  plot.setAxisLabelX("String_Node_Str");
  plot.setAxisLabelY("String_Node_Str");
  plot.setAxisLabelZ("String_Node_Str");
  plot.setTitle("String_Node_Str");
  plot.setTitleColor(GlimpseColor.getWhite());
  plot.getCrosshairPainter().setCursorColor(GlimpseColor.getGreen(0.2f));
  plot.getCrosshairPainter().setShadeColor(GlimpseColor.getGreen(0.05f));
  plot.getCrosshairPainter().setShadeSelectionBox(true);
  plot.getCrosshairPainter().setLineWidth(1);
  plot.setMinX(-1.2);
  plot.setMaxX(1.2);
  plot.setMinY(-1.2);
  plot.setMaxY(1.2);
  plot.setMinZ(0);
  plot.setMaxZ(1000);
  plot.lockAspectRatioXY(1);
  final ShadedTexturePainter painter=new ShadedTexturePainter();
  plot.addPainter(painter);
  ColorTexture1D colors=new ColorTexture1D(1024);
  colors.setColorGradient(ColorGradients.jet);
  final int dataTextureUnit=0;
  final int colorScaleTextureUnit=1;
  painter.addNonDrawableTexture(colors,colorScaleTextureUnit);
  SampledColorScaleShader shader;
  try {
    shader=new SampledColorScaleShader(plot.getAxisZ(),dataTextureUnit,colorScaleTextureUnit);
  }
 catch (  IOException e) {
    e.printStackTrace();
    throw new RuntimeException(e);
  }
  painter.setPipeline(new Pipeline("String_Node_Str",null,null,shader));
  new Thread(new Runnable(){
    @Override public void run(){
      FloatTextureProjected2D data=setupTexture();
      MutatorFloat2D mutator=setupMutator(data);
      painter.addDrawableTexture(data,dataTextureUnit);
      while (true) {
        data.mutate(mutator);
        try {
          Thread.sleep(40);
        }
 catch (        InterruptedException e) {
        }
      }
    }
  }
).start();
  plot.setColorScale(colors);
  plot.addPainter(new BorderPainter());
  plot.addPainter(new FpsPainter());
  return plot;
}