about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorBrian Collins <bricollins@gmail.com>2012-08-27 16:14:47 +0100
committerBrian Collins <bricollins@gmail.com>2012-08-27 16:23:57 +0100
commit16f94546f5d7c941a0d49b49e8cd523e7b67b19d (patch)
treeb1de80cdf47dccf279e4142fa863193c5214544a /src
parent55859c1befa7cd04a130f1816cb73a9629637105 (diff)
downloadngircd-16f94546f5d7c941a0d49b49e8cd523e7b67b19d.tar.gz
ngircd-16f94546f5d7c941a0d49b49e8cd523e7b67b19d.zip
Fix NAMES response when client has multi-prefix
Two fixes here: IRC_Send_NAMES was checking the capability of the
wrong client when responding, and it didn't return any prefix for
clients that had either +v or +o but not both.
Diffstat (limited to 'src')
-rw-r--r--src/ngircd/irc-info.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ngircd/irc-info.c b/src/ngircd/irc-info.c
index 0ea85874..89d2deef 100644
--- a/src/ngircd/irc-info.c
+++ b/src/ngircd/irc-info.c
@@ -1578,10 +1578,10 @@ IRC_Send_NAMES(CLIENT * Client, CHANNEL * Chan)
 		if (is_member || is_visible) {
 			if (str[strlen(str) - 1] != ':')
 				strlcat(str, " ", sizeof(str));
-			if (Client_Cap(cl) & CLIENT_CAP_MULTI_PREFIX) {
-				if (strchr(Channel_UserModes(Chan, cl), 'o') &&
-				    strchr(Channel_UserModes(Chan, cl), 'v'))
-					strlcat(str, "@+", sizeof(str));
+			if (Client_Cap(Client) & CLIENT_CAP_MULTI_PREFIX && 
+					strchr(Channel_UserModes(Chan, cl), 'o') &&
+					strchr(Channel_UserModes(Chan, cl), 'v')) {
+				strlcat(str, "@+", sizeof(str));
 			} else {
 				if (strchr(Channel_UserModes(Chan, cl), 'o'))
 					strlcat(str, "@", sizeof(str));