diff options
-rw-r--r-- | src/hash.c | 3 | ||||
-rw-r--r-- | src/s_serv.c | 5 |
2 files changed, 3 insertions, 5 deletions
@@ -769,8 +769,9 @@ list_one_channel(struct Client *source_p, struct Channel *chptr, char parabuf[MODEBUFLEN] = ""; if (SecretChannel(chptr) && - !(IsMember(source_p, chptr) || HasUMode(source_p, UMODE_ADMIN))) + !(HasUMode(source_p, UMODE_ADMIN) || IsMember(source_p, chptr))) return; + if (dlink_list_length(&chptr->members) < list_task->users_min || dlink_list_length(&chptr->members) > list_task->users_max || (chptr->channelts != 0 && diff --git a/src/s_serv.c b/src/s_serv.c index 3305dc2..c516fd9 100644 --- a/src/s_serv.c +++ b/src/s_serv.c @@ -165,7 +165,6 @@ hunt_server(struct Client *client_p, struct Client *source_p, const char *comman struct Client *target_p = NULL; struct Client *target_tmp = NULL; dlink_node *ptr; - int wilds; /* Assume it's me, if no server */ if (parc <= server || EmptyString(parv[server])) @@ -191,14 +190,12 @@ hunt_server(struct Client *client_p, struct Client *source_p, const char *comman if (target_p->from == source_p->from && !MyConnect(target_p)) target_p = NULL; - wilds = has_wildcards(parv[server]); - /* Again, if there are no wild cards involved in the server * name, use the hash lookup */ if (target_p == NULL) { - if (!wilds) + if (!has_wildcards(parv[server])) { if (!(target_p = hash_find_server(parv[server]))) { |