summaryrefslogtreecommitdiff
path: root/src/modes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modes.cpp')
-rw-r--r--src/modes.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/modes.cpp b/src/modes.cpp
index 274cb2713..ce46aad8a 100644
--- a/src/modes.cpp
+++ b/src/modes.cpp
@@ -595,9 +595,17 @@ void ModeManager::StackerAdd(User *bi, Channel *c, ChannelMode *cm, bool Set, co
StackerInfo *s = GetInfo(ChannelStackerObjects, c);
s->AddMode(cm, Set, Param);
if (bi)
+ {
s->bi = bi;
- else if (c->ci)
- s->bi = c->ci->WhoSends();
+ }
+ else
+ {
+ ChanServ::Channel *ci = c->GetChannel();
+ if (ci)
+ {
+ s->bi = ci->WhoSends();
+ }
+ }
if (!modePipe)
modePipe = new ModePipe();