Program: 25520
Project: 25520
Buggy source:
/** 
 * Constructs a canvas composed of   {@link TransformableCanvas transformed sources}that is dynamically rendered when   {@link #getChannels} is called.
 * @param canvasName              name of this canvas.
 * @param channelNames            names of channels to include in this canvas.
 * @param canvasList              list of transformed components to render.
 * @param x                       left coordinate for this canvas.
 * @param y                       top coordinate for this canvas.
 * @param fullScaleWidth          canvas width at mipmap level 0.
 * @param fullScaleHeight         canvas height at mipmap level 0.
 * @param meshCellSize            desired size of a mesh cell (triangle) in pixels.
 * @param levelZeroScale          scale factor for transformed components at mipmap level 0 of this canvas.
 * @param numberOfMappingThreads  number of threads to use for pixel mapping.
 * @param skipInterpolation       enable sloppy but fast rendering by skipping interpolation.
 * @param binaryMask              render only 100% opaque pixels.
 */
public RenderedCanvasMipmapSource(final String canvasName,final Set<String> channelNames,final List<TransformableCanvas> canvasList,final double x,final double y,final int fullScaleWidth,final int fullScaleHeight,final double meshCellSize,final double levelZeroScale,final int numberOfMappingThreads,final boolean skipInterpolation,final boolean binaryMask){
  this.canvasName=canvasName;
  this.channelNames=channelNames;
  this.canvasList=canvasList;
  this.x=x;
  this.y=y;
  this.fullScaleWidth=fullScaleWidth;
  this.fullScaleHeight=fullScaleHeight;
  this.meshCellSize=meshCellSize;
  this.levelZeroScale=levelZeroScale;
  this.numberOfMappingThreads=numberOfMappingThreads;
  this.skipInterpolation=skipInterpolation;
  this.binaryMask=binaryMask;
}

Fixed version (ground truth):
/** 
 * Constructs a canvas composed of   {@link TransformableCanvas transformed sources}that is dynamically rendered when   {@link #getChannels} is called.
 * @param canvasName              name of this canvas.
 * @param channelNames            names of channels to include in this canvas.
 * @param canvasList              list of transformed components to render.
 * @param x                       left coordinate for this canvas.
 * @param y                       top coordinate for this canvas.
 * @param fullScaleWidth          canvas width at mipmap level 0.
 * @param fullScaleHeight         canvas height at mipmap level 0.
 * @param meshCellSize            desired size of a mesh cell (triangle) in pixels.
 * @param levelZeroScale          scale factor for transformed components at mipmap level 0 of this canvas.
 * @param numberOfMappingThreads  number of threads to use for pixel mapping.
 * @param skipInterpolation       enable sloppy but fast rendering by skipping interpolation.
 * @param hasMasks                true if this canvas contains at least one source with a mask.
 * @param binaryMask              render only 100% opaque pixels.
 */
public RenderedCanvasMipmapSource(final String canvasName,final Set<String> channelNames,final List<TransformableCanvas> canvasList,final double x,final double y,final int fullScaleWidth,final int fullScaleHeight,final double meshCellSize,final double levelZeroScale,final int numberOfMappingThreads,final boolean skipInterpolation,final boolean hasMasks,final boolean binaryMask){
  this.canvasName=canvasName;
  this.channelNames=channelNames;
  this.canvasList=canvasList;
  this.x=x;
  this.y=y;
  this.fullScaleWidth=fullScaleWidth;
  this.fullScaleHeight=fullScaleHeight;
  this.meshCellSize=meshCellSize;
  this.levelZeroScale=levelZeroScale;
  this.numberOfMappingThreads=numberOfMappingThreads;
  this.skipInterpolation=skipInterpolation;
  this.hasMasks=hasMasks;
  this.binaryMask=binaryMask;
}