Program: 59897
Project: 59897
Buggy source:
@Override public boolean renderWorldBlock(IBlockAccess world,int x,int y,int z,Block b,int modelId,RenderBlocks renderer){
  BlockPane block=(BlockPane)b;
  Tessellator tessellator=Tessellator.instance;
  tessellator.setBrightness(block.getMixedBrightnessForBlock(world,x,y,z));
  float f=1.0F;
  int i1=block.colorMultiplier(world,x,y,z);
  float f1=(i1 >> 16 & 255) / 255.0F;
  float f2=(i1 >> 8 & 255) / 255.0F;
  float f3=(i1 & 255) / 255.0F;
  if (EntityRenderer.anaglyphEnable) {
    float f4=(f1 * 30.0F + f2 * 59.0F + f3 * 11.0F) / 100.0F;
    float f5=(f1 * 30.0F + f2 * 70.0F) / 100.0F;
    float f6=(f1 * 30.0F + f3 * 70.0F) / 100.0F;
    f1=f4;
    f2=f5;
    f3=f6;
  }
  tessellator.setColorOpaque_F(f * f1,f * f2,f * f3);
  int meta=world.getBlockMetadata(x,y,z);
  IIcon iconPane=block.getIcon(2,meta);
  IIcon iconTop=block.getIcon(1,meta);
  IIcon iconSide=block.getIcon(0,meta);
  if (iconPane == null || iconTop == null || iconSide == null)   return false;
  paneRenderer.set(x,y,z,iconPane,iconTop,iconSide);
  boolean connectsNorth=block.canPaneConnectToBlock(world.getBlock(x,y,z - 1));
  boolean connectsSouth=block.canPaneConnectToBlock(world.getBlock(x,y,z + 1));
  boolean connectsWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y,z));
  boolean connectsEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y,z));
  boolean connectsTop=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z));
  boolean connectsBottom=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z));
  boolean connectsTopNorth=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z - 1));
  boolean connectsTopSouth=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z + 1));
  boolean connectsTopWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y + 1,z));
  boolean connectsTopEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y + 1,z));
  boolean connectsBottomNorth=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z - 1));
  boolean connectsBottomSouth=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z + 1));
  boolean connectsBottomWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y - 1,z));
  boolean connectsBottomEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y - 1,z));
  boolean isolatedTop=!connectsTopNorth && !connectsTopSouth && !connectsTopWest&& !connectsTopEast;
  boolean isolatedBottom=!connectsBottomNorth && !connectsBottomSouth && !connectsBottomWest&& !connectsBottomEast;
  if (!connectsNorth && !connectsSouth && !connectsWest&& !connectsEast) {
    connectsNorth=connectsSouth=connectsWest=connectsEast=true;
  }
  int connections=0;
  if (connectsNorth) {
    paneRenderer.renderNorthPane();
    if (!connectsBottom || !connectsBottomNorth && !isolatedBottom)     paneRenderer.renderVerticalNS(-0.0003,0.0,0.5,0.5,0.0);
    if (!connectsTop || !connectsTopNorth && !isolatedTop)     paneRenderer.renderVerticalNS(+1.0003,0.0,0.5,0.5,0.0);
    connections++;
  }
  if (connectsSouth) {
    paneRenderer.renderSouthPane();
    if (!connectsBottom || !connectsBottomSouth && !isolatedBottom)     paneRenderer.renderVerticalNS(-0.0004,0.5,1.0,1.0,0.5);
    if (!connectsTop || !connectsTopSouth && !isolatedTop)     paneRenderer.renderVerticalNS(+1.0004,0.5,1.0,1.0,0.5);
    connections++;
  }
  if (connectsWest) {
    paneRenderer.renderWestPane();
    if (!connectsBottom || !connectsBottomWest && !isolatedBottom)     paneRenderer.renderVerticalWE(-0.0001,0.0,0.5,0.5,0.0);
    if (!connectsTop || !connectsTopWest && !isolatedTop)     paneRenderer.renderVerticalWE(+1.0001,0.0,0.5,0.5,0.0);
    connections++;
  }
  if (connectsEast) {
    paneRenderer.renderEastPane();
    if (!connectsBottom || !connectsBottomEast && !isolatedBottom)     paneRenderer.renderVerticalWE(-0.0002,0.5,1.0,1.0,0.5);
    if (!connectsTop || !connectsTopEast && !isolatedTop)     paneRenderer.renderVerticalWE(+1.0002,0.5,1.0,1.0,0.5);
    connections++;
  }
  if (connections == 1) {
    if (connectsNorth)     paneRenderer.renderHorizontalNS(0.5,1.0,0.0);
    if (connectsSouth)     paneRenderer.renderHorizontalNS(0.5,0.0,1.0);
    if (connectsEast)     paneRenderer.renderHorizontalWE(0.5,0.0,1.0);
    if (connectsWest)     paneRenderer.renderHorizontalWE(0.5,1.0,0.0);
  }
 else   if (connections == 4) {
    paneRenderer.renderHorizontalNS(0.0,1.0,0.0);
    paneRenderer.renderHorizontalNS(1.0,0.0,1.0);
    paneRenderer.renderHorizontalWE(0.0,0.0,1.0);
    paneRenderer.renderHorizontalWE(1.0,1.0,0.0);
  }
  return true;
}

Fixed version (ground truth):
@Override public boolean renderWorldBlock(IBlockAccess world,int x,int y,int z,Block b,int modelId,RenderBlocks renderer){
  BlockPane block=(BlockPane)b;
  Tessellator tessellator=Tessellator.instance;
  tessellator.setBrightness(block.getMixedBrightnessForBlock(world,x,y,z));
  float f=1.0F;
  int i1=block.colorMultiplier(world,x,y,z);
  float f1=(i1 >> 16 & 255) / 255.0F;
  float f2=(i1 >> 8 & 255) / 255.0F;
  float f3=(i1 & 255) / 255.0F;
  if (EntityRenderer.anaglyphEnable) {
    float f4=(f1 * 30.0F + f2 * 59.0F + f3 * 11.0F) / 100.0F;
    float f5=(f1 * 30.0F + f2 * 70.0F) / 100.0F;
    float f6=(f1 * 30.0F + f3 * 70.0F) / 100.0F;
    f1=f4;
    f2=f5;
    f3=f6;
  }
  tessellator.setColorOpaque_F(f * f1,f * f2,f * f3);
  int meta=world.getBlockMetadata(x,y,z);
  IIcon iconPane=block.getIcon(2,meta);
  IIcon iconTop=block.getIcon(1,meta);
  IIcon iconSide=block.getIcon(0,meta);
  if (iconPane == null || iconTop == null || iconSide == null)   return false;
  if (renderer.hasOverrideBlockTexture()) {
    paneRenderer.set(x,y,z,renderer.overrideBlockTexture,renderer.overrideBlockTexture,renderer.overrideBlockTexture);
  }
 else {
    paneRenderer.set(x,y,z,iconPane,iconTop,iconSide);
  }
  boolean connectsNorth=block.canPaneConnectToBlock(world.getBlock(x,y,z - 1));
  boolean connectsSouth=block.canPaneConnectToBlock(world.getBlock(x,y,z + 1));
  boolean connectsWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y,z));
  boolean connectsEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y,z));
  boolean connectsTop=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z));
  boolean connectsBottom=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z));
  boolean connectsTopNorth=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z - 1));
  boolean connectsTopSouth=block.canPaneConnectToBlock(world.getBlock(x,y + 1,z + 1));
  boolean connectsTopWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y + 1,z));
  boolean connectsTopEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y + 1,z));
  boolean connectsBottomNorth=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z - 1));
  boolean connectsBottomSouth=block.canPaneConnectToBlock(world.getBlock(x,y - 1,z + 1));
  boolean connectsBottomWest=block.canPaneConnectToBlock(world.getBlock(x - 1,y - 1,z));
  boolean connectsBottomEast=block.canPaneConnectToBlock(world.getBlock(x + 1,y - 1,z));
  boolean isolatedTop=!connectsTopNorth && !connectsTopSouth && !connectsTopWest&& !connectsTopEast;
  boolean isolatedBottom=!connectsBottomNorth && !connectsBottomSouth && !connectsBottomWest&& !connectsBottomEast;
  if (!connectsNorth && !connectsSouth && !connectsWest&& !connectsEast) {
    connectsNorth=connectsSouth=connectsWest=connectsEast=true;
  }
  int connections=0;
  if (connectsNorth) {
    paneRenderer.renderNorthPane();
    if (!connectsBottom || !connectsBottomNorth && !isolatedBottom)     paneRenderer.renderVerticalNS(-0.0003,0.0,0.5,0.5,0.0);
    if (!connectsTop || !connectsTopNorth && !isolatedTop)     paneRenderer.renderVerticalNS(+1.0003,0.0,0.5,0.5,0.0);
    connections++;
  }
  if (connectsSouth) {
    paneRenderer.renderSouthPane();
    if (!connectsBottom || !connectsBottomSouth && !isolatedBottom)     paneRenderer.renderVerticalNS(-0.0004,0.5,1.0,1.0,0.5);
    if (!connectsTop || !connectsTopSouth && !isolatedTop)     paneRenderer.renderVerticalNS(+1.0004,0.5,1.0,1.0,0.5);
    connections++;
  }
  if (connectsWest) {
    paneRenderer.renderWestPane();
    if (!connectsBottom || !connectsBottomWest && !isolatedBottom)     paneRenderer.renderVerticalWE(-0.0001,0.0,0.5,0.5,0.0);
    if (!connectsTop || !connectsTopWest && !isolatedTop)     paneRenderer.renderVerticalWE(+1.0001,0.0,0.5,0.5,0.0);
    connections++;
  }
  if (connectsEast) {
    paneRenderer.renderEastPane();
    if (!connectsBottom || !connectsBottomEast && !isolatedBottom)     paneRenderer.renderVerticalWE(-0.0002,0.5,1.0,1.0,0.5);
    if (!connectsTop || !connectsTopEast && !isolatedTop)     paneRenderer.renderVerticalWE(+1.0002,0.5,1.0,1.0,0.5);
    connections++;
  }
  if (connections == 1) {
    if (connectsNorth)     paneRenderer.renderHorizontalNS(0.5,1.0,0.0);
    if (connectsSouth)     paneRenderer.renderHorizontalNS(0.5,0.0,1.0);
    if (connectsEast)     paneRenderer.renderHorizontalWE(0.5,0.0,1.0);
    if (connectsWest)     paneRenderer.renderHorizontalWE(0.5,1.0,0.0);
  }
 else   if (connections == 4) {
    paneRenderer.renderHorizontalNS(0.0,1.0,0.0);
    paneRenderer.renderHorizontalNS(1.0,0.0,1.0);
    paneRenderer.renderHorizontalWE(0.0,0.0,1.0);
    paneRenderer.renderHorizontalWE(1.0,1.0,0.0);
  }
  return true;
}