Program: 156810
Project: 156810
Buggy source:
public void read(NBTTagCompound nbt){
  NBTTagList blocksMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < blocksMapping.tagCount(); ++i) {
    NBTTagCompound sub=blocksMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Block b=(Block)Block.blockRegistry.getObject(name);
    if (b != null) {
      registerBlock(b);
    }
 else {
      idToBlock.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
  NBTTagList itemsMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < itemsMapping.tagCount(); ++i) {
    NBTTagCompound sub=itemsMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Item item=(Item)Item.itemRegistry.getObject(name);
    if (item != null) {
      registerItem(item);
    }
 else {
      idToItem.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
  NBTTagList entitiesMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < entitiesMapping.tagCount(); ++i) {
    NBTTagCompound sub=entitiesMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Class<? extends Entity> e=null;
    try {
      e=(Class<? extends Entity>)Class.forName(name);
    }
 catch (    ClassNotFoundException e1) {
      e1.printStackTrace();
    }
    if (e != null) {
      registerEntity(e);
    }
 else {
      idToEntity.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
}

Fixed version (ground truth):
public void read(NBTTagCompound nbt){
  NBTTagList blocksMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < blocksMapping.tagCount(); ++i) {
    NBTTagCompound sub=blocksMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Block b=null;
    if (Block.blockRegistry.containsKey(name)) {
      b=(Block)Block.blockRegistry.getObject(name);
    }
    if (b != null) {
      registerBlock(b);
    }
 else {
      idToBlock.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
  NBTTagList itemsMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < itemsMapping.tagCount(); ++i) {
    NBTTagCompound sub=itemsMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Item item=null;
    if (Item.itemRegistry.containsKey(name)) {
      item=(Item)Item.itemRegistry.getObject(name);
    }
    if (item != null) {
      registerItem(item);
    }
 else {
      idToItem.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
  NBTTagList entitiesMapping=nbt.getTagList("String_Node_Str",Constants.NBT.TAG_COMPOUND);
  for (int i=0; i < entitiesMapping.tagCount(); ++i) {
    NBTTagCompound sub=entitiesMapping.getCompoundTagAt(i);
    String name=sub.getString("String_Node_Str");
    Class<? extends Entity> e=null;
    try {
      e=(Class<? extends Entity>)Class.forName(name);
    }
 catch (    ClassNotFoundException e1) {
      e1.printStackTrace();
    }
    if (e != null) {
      registerEntity(e);
    }
 else {
      idToEntity.add(null);
      BCLog.logger.log(Level.WARN,"String_Node_Str" + name);
    }
  }
}