summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/channels.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/channels.cpp b/src/channels.cpp
index 5b487a347..43c4283c1 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -827,9 +827,11 @@ Anope::string Channel::GetModes(bool complete, bool plus)
if (complete && !it->second.empty())
{
- ChannelModeParam *cmp = anope_dynamic_static_cast<ChannelModeParam *>(cm);
+ ChannelModeParam *cmp = NULL;
+ if (cm->type == MODE_PARAM)
+ cmp = anope_dynamic_static_cast<ChannelModeParam *>(cm);
- if (plus || !cmp->minus_no_arg)
+ if (plus || !cmp || !cmp->minus_no_arg)
params += " " + it->second;
}
}