diff options
Diffstat (limited to 'src/protocol/shadowircd.c')
| -rw-r--r-- | src/protocol/shadowircd.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/protocol/shadowircd.c b/src/protocol/shadowircd.c index 6d3410073..0c2741f93 100644 --- a/src/protocol/shadowircd.c +++ b/src/protocol/shadowircd.c @@ -706,11 +706,16 @@ int anope_event_tburst(char *source, int ac, char **av) alog("debug: TOPIC %s for nonexistent channel %s", merge_args(ac - 1, av + 1), av[0]); } + if (setter) + free(setter); return MOD_CONT; } - if (check_topiclock(c, topic_time)) + if (check_topiclock(c, topic_time)) { + if (setter) + free(setter); return MOD_CONT; + } if (c->topic) { free(c->topic); @@ -723,6 +728,8 @@ int anope_event_tburst(char *source, int ac, char **av) c->topic_time = topic_time; record_topic(av[0]); + if (setter) + free(setter); return MOD_CONT; } @@ -1627,7 +1634,10 @@ int anope_event_bmask(char *source, int ac, char **av) if (!stricmp(av[2], "I")) { add_invite(c, b); } + if (b) + free(b); } + free(bans); } return MOD_CONT; } |
