Program: 187505
Project: 187505
Buggy source:
@EventHandler public void onPlayerInteract(final PlayerInteractEvent event){
  if (event.getAction().equals(Action.RIGHT_CLICK_AIR) && Control.CONTROL_ITEM.compare(event.getPlayer().getItemInHand()) && MyPetList.hasMyPet(event.getPlayer())) {
    MyPet myPet=MyPetList.getMyPet(event.getPlayer());
    if (myPet.getStatus() == PetState.Here && myPet.getCraftPet().canMove()) {
      if (myPet.getSkills().isSkillActive(Control.class)) {
        if (myPet.getSkills().isSkillActive(Behavior.class)) {
          Behavior behavior=myPet.getSkills().getSkill(Behavior.class);
          if (behavior.getBehavior() == BehaviorState.Aggressive || behavior.getBehavior() == BehaviorState.Farm) {
            event.getPlayer().sendMessage(Util.formatText(Locales.getString("String_Node_Str",event.getPlayer()),myPet.getPetName(),behavior.getBehavior().name()));
            return;
          }
        }
        if (myPet.getSkills().isSkillActive(Ride.class)) {
          if (myPet.getCraftPet().getHandle().hasRider()) {
            event.getPlayer().sendMessage(Util.formatText(Locales.getString("String_Node_Str",event.getPlayer()),myPet.getPetName()));
            return;
          }
        }
        if (!Permissions.hasExtended(event.getPlayer(),"String_Node_Str")) {
          myPet.sendMessageToOwner(Locales.getString("String_Node_Str",myPet.getOwner().getLanguage()));
          return;
        }
        Block block=event.getPlayer().getTargetBlock((Set)null,100);
        if (block != null && block.getType() != Material.AIR) {
          for (          int i : ControllIgnoreBlocks) {
            if (block.getTypeId() == i) {
              block=block.getRelative(BlockFace.DOWN);
              break;
            }
          }
          myPet.getSkills().getSkill(Control.class).setMoveTo(block.getLocation());
        }
      }
    }
  }
}

Fixed version (ground truth):
@EventHandler public void onPlayerInteract(final PlayerInteractEvent event){
  if (event.getAction().equals(Action.RIGHT_CLICK_AIR) && Control.CONTROL_ITEM.compare(event.getPlayer().getItemInHand()) && MyPetList.hasMyPet(event.getPlayer())) {
    MyPet myPet=MyPetList.getMyPet(event.getPlayer());
    if (myPet.getStatus() == PetState.Here && myPet.getCraftPet().canMove()) {
      if (myPet.getSkills().isSkillActive(Control.class)) {
        if (myPet.getSkills().isSkillActive(Behavior.class)) {
          Behavior behavior=myPet.getSkills().getSkill(Behavior.class);
          if (behavior.getBehavior() == BehaviorState.Aggressive || behavior.getBehavior() == BehaviorState.Farm) {
            event.getPlayer().sendMessage(Util.formatText(Locales.getString("String_Node_Str",event.getPlayer()),myPet.getPetName(),behavior.getBehavior().name()));
            return;
          }
        }
        if (myPet.getSkills().isSkillActive(Ride.class)) {
          if (myPet.getCraftPet().getHandle().hasRider()) {
            event.getPlayer().sendMessage(Util.formatText(Locales.getString("String_Node_Str",event.getPlayer()),myPet.getPetName()));
            return;
          }
        }
        if (!Permissions.hasExtended(event.getPlayer(),"String_Node_Str")) {
          myPet.sendMessageToOwner(Locales.getString("String_Node_Str",myPet.getOwner().getLanguage()));
          return;
        }
        Block block=event.getPlayer().getTargetBlock((HashSet<Byte>)null,100);
        if (block != null && block.getType() != Material.AIR) {
          for (          int i : ControllIgnoreBlocks) {
            if (block.getTypeId() == i) {
              block=block.getRelative(BlockFace.DOWN);
              break;
            }
          }
          myPet.getSkills().getSkill(Control.class).setMoveTo(block.getLocation());
        }
      }
    }
  }
}