Program: 33976
Project: 33976
Buggy source:
/** 
 * Adds a player to an island as a coop player.
 * @param requester
 * @param newPlayer
 */
public void addCoopPlayer(Player requester,Player newPlayer){
  Location island=null;
  if (plugin.getPlayers().inTeam(requester.getUniqueId())) {
    island=plugin.getPlayers().getTeamIslandLocation(requester.getUniqueId());
    UUID leaderUUID=plugin.getPlayers().getTeamLeader(requester.getUniqueId());
    for (    UUID member : plugin.getPlayers().getMembers(leaderUUID)) {
      if (!member.equals(requester.getUniqueId())) {
        Player player=plugin.getServer().getPlayer(member);
        if (player != null) {
          player.sendMessage(ChatColor.GOLD + plugin.myLocale(player.getUniqueId()).coopInvited.replace("String_Node_Str",requester.getDisplayName()).replace("String_Node_Str",newPlayer.getDisplayName()));
          player.sendMessage(ChatColor.GOLD + plugin.myLocale(player.getUniqueId()).coopUseExpel);
        }
 else {
          if (member.equals(leaderUUID)) {
            plugin.getMessages().setMessage(leaderUUID,plugin.myLocale(leaderUUID).coopInvited.replace("String_Node_Str",requester.getDisplayName()).replace("String_Node_Str",newPlayer.getDisplayName()));
          }
        }
      }
    }
  }
 else {
    island=plugin.getPlayers().getIslandLocation(requester.getUniqueId());
  }
  if (coopPlayers.containsKey(newPlayer.getUniqueId())) {
    coopPlayers.get(newPlayer.getUniqueId()).put(island,requester.getUniqueId());
  }
 else {
    HashMap<Location,UUID> loc=new HashMap<Location,UUID>();
    loc.put(island,requester.getUniqueId());
    coopPlayers.put(newPlayer.getUniqueId(),loc);
  }
  Island coopIsland=plugin.getGrid().getIslandAt(island);
  final CoopJoinEvent event=new CoopJoinEvent(newPlayer.getUniqueId(),coopIsland,requester.getUniqueId());
  plugin.getServer().getPluginManager().callEvent(event);
}

Fixed version (ground truth):
/** 
 * Adds a player to an island as a coop player.
 * @param requester
 * @param newPlayer
 */
public void addCoopPlayer(Player requester,Player newPlayer){
  Location islandLoc=null;
  if (plugin.getPlayers().inTeam(requester.getUniqueId())) {
    islandLoc=plugin.getPlayers().getTeamIslandLocation(requester.getUniqueId());
    UUID leaderUUID=plugin.getPlayers().getTeamLeader(requester.getUniqueId());
    for (    UUID member : plugin.getPlayers().getMembers(leaderUUID)) {
      if (!member.equals(requester.getUniqueId())) {
        Player player=plugin.getServer().getPlayer(member);
        if (player != null) {
          player.sendMessage(ChatColor.GOLD + plugin.myLocale(player.getUniqueId()).coopInvited.replace("String_Node_Str",requester.getDisplayName()).replace("String_Node_Str",newPlayer.getDisplayName()));
          player.sendMessage(ChatColor.GOLD + plugin.myLocale(player.getUniqueId()).coopUseExpel);
        }
 else {
          if (member.equals(leaderUUID)) {
            plugin.getMessages().setMessage(leaderUUID,plugin.myLocale(leaderUUID).coopInvited.replace("String_Node_Str",requester.getDisplayName()).replace("String_Node_Str",newPlayer.getDisplayName()));
          }
        }
      }
    }
  }
 else {
    islandLoc=plugin.getPlayers().getIslandLocation(requester.getUniqueId());
  }
  Island coopIsland=plugin.getGrid().getIslandAt(islandLoc);
  if (coopPlayers.containsKey(newPlayer.getUniqueId())) {
    coopPlayers.get(newPlayer.getUniqueId()).put(coopIsland.getCenter(),requester.getUniqueId());
  }
 else {
    HashMap<Location,UUID> loc=new HashMap<Location,UUID>();
    loc.put(coopIsland.getCenter(),requester.getUniqueId());
    coopPlayers.put(newPlayer.getUniqueId(),loc);
  }
  final CoopJoinEvent event=new CoopJoinEvent(newPlayer.getUniqueId(),coopIsland,requester.getUniqueId());
  plugin.getServer().getPluginManager().callEvent(event);
}