diff options
author | Adam <Adam@anope.org> | 2013-03-20 11:03:02 -0500 |
---|---|---|
committer | Adam <Adam@anope.org> | 2013-03-20 11:39:16 -0500 |
commit | 6a0e4418f4c41dfb687de80773b4e4d45dc2e12b (patch) | |
tree | f713464980b3c28b17d473e32eb7df612468d94b /src/regchannel.cpp | |
parent | 731912f01eb14d811575c492dc64b60084bd412c (diff) |
Check that channels still exist before nulling their ci pointer in channelinfos destructor
Change the persist setting on a channel to mean only that it is being
enforced ircd-side
Diffstat (limited to 'src/regchannel.cpp')
-rw-r--r-- | src/regchannel.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/regchannel.cpp b/src/regchannel.cpp index acfe5cf91..c4c02ad0e 100644 --- a/src/regchannel.cpp +++ b/src/regchannel.cpp @@ -368,7 +368,9 @@ ChannelInfo::~ChannelInfo() { if (this->bi && this->c->FindUser(this->bi)) this->bi->Part(this->c); - this->c->ci = NULL; + /* Parting the service bot can cause the channel to go away */ + if (this->c) + this->c->ci = NULL; } RegisteredChannelList->erase(this->name); |