message: On NAMES query, check if we are joined.
diff: @@ -510,6 +510,17 @@ IrcHandler.prototype.onJoin = Promise.coroutine(function*(req, server, joiningUs
  matrixUser.getId()
  );
  let promises = matrixRooms.map((room) => {
  + /** If this is a "NAMES" query, we can make use of the joinedMembers call we made
  + * to check if the user already exists in the room. This should save oodles of time.
  + */
  + if (kind === "names" &&
  + this.ircBridge.memberListSyncers[server.domain].isRemoteJoinedToRoom(
  + room.getId(),
  + matrixUser.getId(),
  + )) {
  + req.log.debug("Not joining to %s, already joined.", room.getId());
  + return;
  + }
  req.log.info("Joining room %s and setting presence to online", room.getId());
  const joinRetry = (attempts) => {
  req.log.debug(`Joining room (attempts:${attempts})`);
  