diff options
-rw-r--r-- | src/chanserv.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/chanserv.c b/src/chanserv.c index 3017bfd8a..0d0914f69 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -731,7 +731,7 @@ void save_cs_dbase() void check_modes(Channel * c) { char modebuf[64], argbuf[BUFSIZE], *end = modebuf, *end2 = argbuf; - uint32 modes; + uint32 modes = 0; ChannelInfo *ci; CBModeInfo *cbmi; CBMode *cbm; @@ -816,9 +816,9 @@ void check_modes(Channel * c) } } } else if (cbmi->getvalue && cbmi->csgetvalue - && ((ci->mlock_on & cbmi->flag) - || (DefConModesOn & cbmi->flag)) - && (c->mode & cbmi->flag)) { + && ((ci && (ci->mlock_on & cbmi->flag)) + || (DefConModesOn & cbmi->flag)) + && (c->mode & cbmi->flag)) { char *value = cbmi->getvalue(c); char *csvalue; |