summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/irc/core/modes.c1
-rw-r--r--src/irc/core/modes.h4
2 files changed, 3 insertions, 2 deletions
diff --git a/src/irc/core/modes.c b/src/irc/core/modes.c
index 37f724fa..794aff7d 100644
--- a/src/irc/core/modes.c
+++ b/src/irc/core/modes.c
@@ -250,6 +250,7 @@ void parse_channel_modes(IRC_CHANNEL_REC *channel, const char *setby,
break;
case 'o':
+ case 'O': /* channel owner in !channels */
if (g_strcasecmp(channel->server->nick, arg) == 0)
channel->chanop = type == '+';
nick_mode_change(channel, arg, '@', type);
diff --git a/src/irc/core/modes.h b/src/irc/core/modes.h
index 2f007ec4..edb2c9e6 100644
--- a/src/irc/core/modes.h
+++ b/src/irc/core/modes.h
@@ -6,8 +6,8 @@
/* modes that have argument always */
#define HAS_MODE_ARG_ALWAYS(mode) \
- ((mode) == 'b' || (mode) == 'e' || (mode) == 'I' || \
- (mode) == 'o' || (mode) == 'h' || (mode) == 'v' || (mode) == 'k')
+ ((mode) == 'b' || (mode) == 'e' || (mode) == 'I' || (mode) == 'k' || \
+ (mode) == 'o' || (mode) == 'h' || (mode) == 'v' || (mode) == 'O')
/* modes that have argument when being set (+) */
#define HAS_MODE_ARG_SET(mode) \