Program: 19633
Project: 19633
Buggy source:
public static IntMap buildIntMap(String line,Minecart cart,Direction d){
  log.info("String_Node_Str" + line + "String_Node_Str");
  IntMap map=new IntMap();
  boolean isNegate=false;
  if (checkDirection(line,d)) {
    Bukkit.getServer().broadcastMessage("String_Node_Str" + line + "String_Node_Str");
    if (line.length() >= 2 && line.charAt(1) == '+') {
      line=line.substring(2);
      Bukkit.getServer().broadcastMessage(line);
    }
    if (line.charAt(0) == '!') {
      isNegate=true;
      line=line.substring(1);
    }
    String[] commands=line.split("String_Node_Str");
    for (    String command : commands) {
      int value=0;
      String[] splitline=command.split("String_Node_Str");
      if (splitline.length == 2) {
        try {
          value=Integer.parseInt(splitline[1]);
          value=(value < 1 ? Integer.MAX_VALUE : value);
          command=splitline[0];
        }
 catch (        NumberFormatException e) {
          return null;
        }
      }
 else       if (splitline.length != 1) {
        return null;
      }
      splitline=command.split("String_Node_Str");
      if (splitline.length == 2) {
        int[] startPair=checkIDData(splitline[0]);
        int[] endPair=checkIDData(splitline[1]);
        if (startPair != null && endPair != null) {
          if (value == 0) {
            if (isNegate) {
              value=Integer.MIN_VALUE;
            }
 else {
              value=Integer.MAX_VALUE;
            }
          }
          log.info("String_Node_Str");
          map.setRange(startPair[0],(byte)(startPair[1] & 0xff),endPair[0],(byte)(endPair[1] & 0xff),value);
        }
 else {
          return null;
        }
      }
 else       if (splitline.length == 1) {
        int[] pair=checkIDData(splitline[0]);
        if (pair != null) {
          if (value == 0) {
            if (isNegate) {
              value=Integer.MIN_VALUE;
            }
 else {
              value=Integer.MAX_VALUE;
            }
          }
          map.setInt(pair[0],(byte)(pair[1] & 0xff),value);
        }
 else {
          return null;
        }
      }
 else {
        return null;
      }
    }
  }
  return map;
}

Fixed version (ground truth):
public static IntMap buildIntMap(String line,Direction d){
  IntMap map=new IntMap();
  boolean isNegate=false;
  System.out.println("String_Node_Str");
  if (checkDirection(line,d)) {
    Bukkit.getServer().broadcastMessage("String_Node_Str" + line + "String_Node_Str");
    if (line.length() >= 2 && line.charAt(1) == '+') {
      line=line.substring(2);
      Bukkit.getServer().broadcastMessage(line);
    }
    if (line.charAt(0) == '!') {
      isNegate=true;
      line=line.substring(1);
    }
    String[] commands=line.split("String_Node_Str");
    for (    String command : commands) {
      int value=0;
      String[] splitline=command.split("String_Node_Str");
      if (splitline.length == 2) {
        try {
          value=Integer.parseInt(splitline[1]);
          value=(value < 1 ? Integer.MAX_VALUE : value);
          command=splitline[0];
        }
 catch (        NumberFormatException e) {
          return null;
        }
      }
 else       if (splitline.length != 1) {
        return null;
      }
      splitline=command.split("String_Node_Str");
      System.out.println("String_Node_Str");
      if (splitline.length == 2) {
        int[] startPair=checkIDData(splitline[0]);
        int[] endPair=checkIDData(splitline[1]);
        if (startPair != null && endPair != null) {
          if (value == 0) {
            if (isNegate) {
              value=Integer.MIN_VALUE;
            }
 else {
              value=Integer.MAX_VALUE;
            }
          }
          map.setRange(startPair[0],(byte)(startPair[1] & 0xff),endPair[0],(byte)(endPair[1] & 0xff),value);
        }
 else {
          return null;
        }
      }
 else       if (splitline.length == 1) {
        int[] pair=checkIDData(splitline[0]);
        if (pair != null) {
          if (value == 0) {
            if (isNegate) {
              value=Integer.MIN_VALUE;
            }
 else {
              value=Integer.MAX_VALUE;
            }
          }
          map.setInt(pair[0],(byte)(pair[1] & 0xff),value);
        }
 else {
          return null;
        }
      }
 else {
        return null;
      }
    }
  }
  return map;
}