Program: 18986
Project: 18986
Buggy source:
@Override public boolean execute(Plugin plugin,CommandSender sender,String[] args) throws SMSException {
  ScrollingMenuSign smsPlugin=(ScrollingMenuSign)plugin;
  SMSView view=null;
  SMSMenu menu=SMSMenu.getMenu(args[0]);
  String viewName=getStringOption("String_Node_Str");
  Location loc=hasOption("String_Node_Str") ? MiscUtil.parseLocation(getStringOption("String_Node_Str")) : null;
  if (hasOption("String_Node_Str")) {
    if (smsPlugin.isSpoutEnabled())     view=SMSSpoutView.addSpoutViewToMenu(viewName,menu);
 else     throw new SMSException("String_Node_Str");
  }
 else   if (hasOption("String_Node_Str")) {
    if (loc == null) {
      interactiveCreation(sender,viewName,menu,"String_Node_Str");
      return true;
    }
 else {
      view=SMSSignView.addSignToMenu(viewName,menu,loc);
    }
  }
 else   if (hasOption("String_Node_Str")) {
    if (loc == null) {
      interactiveCreation(sender,viewName,menu,"String_Node_Str");
      return true;
    }
 else {
      view=SMSRedstoneView.addRedstoneViewToMenu(viewName,menu,loc);
    }
  }
 else   if (hasOption("String_Node_Str") || hasOption("String_Node_Str")) {
    view=SMSInventoryView.addInventoryViewToMenu(viewName,menu);
  }
 else   if (hasOption("String_Node_Str") && loc != null) {
    view=SMSMultiSignView.addSignToMenu(viewName,menu,loc);
  }
 else   if (hasOption("String_Node_Str")) {
    try {
      short mapId=(short)getIntOption("String_Node_Str");
      view=SMSMapView.addMapToMenu(viewName,menu,mapId);
    }
 catch (    NumberFormatException e) {
      throw new SMSException(e.getMessage());
    }
  }
 else   if (args.length > 1) {
    throw new SMSException("String_Node_Str" + args[1]);
  }
  if (view == null) {
    notFromConsole(sender);
    Player player=(Player)sender;
    if (player.getItemInHand().getType() == Material.MAP) {
      PermissionUtils.requirePerms(sender,"String_Node_Str");
      short mapId=player.getItemInHand().getDurability();
      view=SMSMapView.addMapToMenu(viewName,menu,mapId);
      ((SMSMapView)view).setMapItemName(player.getItemInHand());
    }
 else {
      try {
        Block b=player.getTargetBlock(null,ScrollingMenuSign.BLOCK_TARGET_DIST);
        if (hasOption("String_Node_Str") && b.getType() == Material.WALL_SIGN) {
          view=SMSMultiSignView.addSignToMenu(viewName,menu,b.getLocation());
        }
 else         if (b.getType() == Material.WALL_SIGN || b.getType() == Material.SIGN_POST) {
          view=SMSSignView.addSignToMenu(viewName,menu,b.getLocation());
        }
      }
 catch (      IllegalStateException e) {
      }
    }
  }
  if (view != null) {
    MiscUtil.statusMessage(sender,String.format("String_Node_Str",view.getType(),view.getName(),menu.getName()));
  }
 else {
    throw new SMSException("String_Node_Str");
  }
  return true;
}

Fixed version (ground truth):
@Override public boolean execute(Plugin plugin,CommandSender sender,String[] args) throws SMSException {
  ScrollingMenuSign smsPlugin=(ScrollingMenuSign)plugin;
  SMSView view=null;
  SMSMenu menu=SMSMenu.getMenu(args[0]);
  String viewName=getStringOption("String_Node_Str");
  Location loc=hasOption("String_Node_Str") ? MiscUtil.parseLocation(getStringOption("String_Node_Str")) : null;
  if (hasOption("String_Node_Str")) {
    if (smsPlugin.isSpoutEnabled())     view=SMSSpoutView.addSpoutViewToMenu(viewName,menu,sender);
 else     throw new SMSException("String_Node_Str");
  }
 else   if (hasOption("String_Node_Str")) {
    if (loc == null) {
      interactiveCreation(sender,viewName,menu,"String_Node_Str");
      return true;
    }
 else {
      view=SMSSignView.addSignToMenu(viewName,menu,loc,sender);
    }
  }
 else   if (hasOption("String_Node_Str")) {
    if (loc == null) {
      interactiveCreation(sender,viewName,menu,"String_Node_Str");
      return true;
    }
 else {
      view=SMSRedstoneView.addRedstoneViewToMenu(viewName,menu,loc,sender);
    }
  }
 else   if (hasOption("String_Node_Str") || hasOption("String_Node_Str")) {
    view=SMSInventoryView.addInventoryViewToMenu(viewName,menu,sender);
  }
 else   if (hasOption("String_Node_Str") && loc != null) {
    view=SMSMultiSignView.addSignToMenu(viewName,menu,loc,sender);
  }
 else   if (hasOption("String_Node_Str")) {
    try {
      short mapId=(short)getIntOption("String_Node_Str");
      view=SMSMapView.addMapToMenu(viewName,menu,mapId,sender);
    }
 catch (    NumberFormatException e) {
      throw new SMSException(e.getMessage());
    }
  }
 else   if (args.length > 1) {
    throw new SMSException("String_Node_Str" + args[1]);
  }
  if (view == null) {
    notFromConsole(sender);
    Player player=(Player)sender;
    if (player.getItemInHand().getType() == Material.MAP) {
      PermissionUtils.requirePerms(sender,"String_Node_Str");
      short mapId=player.getItemInHand().getDurability();
      view=SMSMapView.addMapToMenu(viewName,menu,mapId,sender);
      ((SMSMapView)view).setMapItemName(player.getItemInHand());
    }
 else {
      try {
        Block b=player.getTargetBlock(null,ScrollingMenuSign.BLOCK_TARGET_DIST);
        if (hasOption("String_Node_Str") && b.getType() == Material.WALL_SIGN) {
          view=SMSMultiSignView.addSignToMenu(viewName,menu,b.getLocation(),sender);
        }
 else         if (b.getType() == Material.WALL_SIGN || b.getType() == Material.SIGN_POST) {
          view=SMSSignView.addSignToMenu(viewName,menu,b.getLocation(),sender);
        }
      }
 catch (      IllegalStateException e) {
      }
    }
  }
  if (view != null) {
    MiscUtil.statusMessage(sender,String.format("String_Node_Str",view.getType(),view.getName(),menu.getName()));
  }
 else {
    throw new SMSException("String_Node_Str");
  }
  return true;
}