Program: 22494
Project: 22494
Buggy source:
public void updateEntity(){
  int[] target=getTarget(1);
  int x=target[0], y=yCoord, z=target[1];
  decodeAndCreateParticles(1);
  if (this.hasBlockUpdate && this.hasPartner()) {
    if (this.shouldStop) {
      System.out.println("String_Node_Str");
      this.spinup=0;
      this.extendedLength=0;
      this.extendedTicks=0;
      this.isActive=false;
      this.shouldStop=false;
      this.isBreaking=false;
      return;
    }
 else {
      System.out.println("String_Node_Str");
    }
    if (this.hasSomethingToSmash() && !this.isActive) {
      this.isActive=true;
      this.isBreaking=true;
    }
    this.hasBlockUpdate=false;
  }
  if (this.isActive) {
    if (this.isBreaking) {
      if (this.spinup < 41) {
        if (this.spinup == 40) {
          if (!worldObj.isAirBlock(x,y,z) && worldObj.getBlock(x,y,z).getBlockHardness(worldObj,x,y,z) < 50F) {
            this.smooshingBlock=worldObj.getBlock(x,y,z);
            this.smooshingMeta=worldObj.getBlockMetadata(x,y,z);
            this.smooshedStack=new ItemStack(smooshingBlock.getItem(worldObj,x,y,z),1,smooshingMeta);
            this.spinup++;
            if (this.getBlockMetadata() % 2 == 0)             worldObj.setBlock(x,y,z,SteamcraftBlocks.dummy);
          }
 else {
            System.out.println("String_Node_Str");
            if (this.hasPartner()) {
              System.out.println("String_Node_Str");
              int[] pc=getTarget(2);
              TileEntitySmasher partner=(TileEntitySmasher)worldObj.getTileEntity(pc[0],yCoord,pc[1]);
              System.out.println("String_Node_Str" + partner.spinup);
              if (partner.spinup < 41) {
                System.out.println("String_Node_Str");
                this.shouldStop=true;
              }
              if (partner.spinup >= 41) {
                System.out.println("String_Node_Str");
                if (partner.shouldStop) {
                  System.out.println("String_Node_Str");
                  this.shouldStop=true;
                }
              }
              if (shouldStop) {
                this.spinup++;
                return;
              }
            }
          }
        }
        this.spinup++;
      }
 else       if (this.extendedLength < 0.5F && !this.shouldStop) {
        this.extendedLength+=0.1F;
        if (this.extendedTicks == 3) {
          if (this.getBlockMetadata() % 2 == 0 && !worldObj.isRemote)           spawnItems(x,y,z);
        }
        this.extendedTicks++;
      }
 else {
        this.isBreaking=false;
        this.spinup=0;
      }
    }
 else {
      if (this.extendedLength > 0.0F) {
        this.extendedLength-=0.025F;
        this.extendedTicks++;
        if (this.extendedLength < 0F)         this.extendedLength=0F;
      }
 else {
        this.isActive=false;
        this.extendedTicks=0;
        if (worldObj.getBlock(x,y,z) == SteamcraftBlocks.dummy) {
          worldObj.setBlockToAir(x,y,z);
        }
      }
    }
    this.worldObj.markBlockForUpdate(xCoord,yCoord,zCoord);
  }
}

Fixed version (ground truth):
public void updateEntity(){
  int[] target=getTarget(1);
  int x=target[0], y=yCoord, z=target[1];
  decodeAndCreateParticles(1);
  if (this.hasBlockUpdate && this.hasPartner()) {
    if (this.shouldStop) {
      System.out.println("String_Node_Str");
      this.spinup=0;
      this.extendedLength=0;
      this.extendedTicks=0;
      this.isActive=false;
      this.shouldStop=false;
      this.isBreaking=false;
      return;
    }
 else {
      System.out.println("String_Node_Str");
    }
    if (this.hasSomethingToSmash() && !this.isActive) {
      this.isActive=true;
      this.isBreaking=true;
    }
    this.hasBlockUpdate=false;
  }
  if (this.isActive) {
    if (this.isBreaking) {
      if (this.spinup < 41) {
        if (this.spinup == 40) {
          if (!worldObj.isAirBlock(x,y,z) && worldObj.getBlock(x,y,z).getBlockHardness(worldObj,x,y,z) < 50F) {
            this.smooshingBlock=worldObj.getBlock(x,y,z);
            this.smooshingMeta=worldObj.getBlockMetadata(x,y,z);
            this.smooshedStack=new ItemStack(smooshingBlock.getItem(worldObj,x,y,z),1,smooshingMeta);
            this.spinup++;
            if (this.getBlockMetadata() % 2 == 0)             worldObj.setBlock(x,y,z,SteamcraftBlocks.dummy);
          }
 else {
            System.out.println("String_Node_Str");
            if (this.hasPartner()) {
              System.out.println("String_Node_Str");
              int[] pc=getTarget(2);
              TileEntitySmasher partner=(TileEntitySmasher)worldObj.getTileEntity(pc[0],yCoord,pc[1]);
              System.out.println("String_Node_Str" + partner.spinup);
              if (partner.spinup < 41) {
                System.out.println("String_Node_Str");
                this.shouldStop=true;
              }
              if (partner.spinup >= 41) {
                System.out.println("String_Node_Str");
                if (partner.shouldStop) {
                  System.out.println("String_Node_Str");
                  this.shouldStop=true;
                }
              }
              if (shouldStop) {
                this.spinup++;
                return;
              }
            }
          }
        }
        this.spinup++;
      }
 else       if (this.extendedLength < 0.5F && !this.shouldStop) {
        this.extendedLength+=0.1F;
        if (this.extendedTicks == 3) {
          if (this.getBlockMetadata() % 2 == 0 && !worldObj.isRemote)           spawnItems(x,y,z);
        }
        this.extendedTicks++;
      }
 else {
        this.isBreaking=false;
        this.spinup=0;
      }
    }
 else {
      if (this.extendedLength > 0.0F) {
        this.extendedLength-=0.025F;
        this.extendedTicks++;
        if (this.extendedLength < 0F)         this.extendedLength=0F;
      }
 else {
        this.isActive=false;
        this.extendedTicks=0;
        if (worldObj.getBlock(x,y,z) == SteamcraftBlocks.dummy) {
          worldObj.setBlockToAir(x,y,z);
        }
      }
    }
    this.worldObj.markBlockForUpdate(xCoord,yCoord,zCoord);
  }
 else   if (worldObj.getBlock(x,y,z) == SteamcraftBlocks.dummy && getBlockMetadata() % 2 == 0) {
    worldObj.setBlockToAir(x,y,z);
  }
}