summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2008-01-26 10:31:06 +0000
committergeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2008-01-26 10:31:06 +0000
commitaef8102b5b289cc2b5ca5b14673da9b67faf724d (patch)
tree216d738ceecb05ddb55569c090cca41c42d347e0 /src
parentb0f9385857803606451dfcb9eff84b7bcdd257b6 (diff)
BUILD : 1.7.21 (1360) BUGS : 839 NOTES : Removed old code from cs_clear and fixed a memory leak in there as well
git-svn-id: svn://svn.anope.org/anope/trunk@1360 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1075 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src')
-rw-r--r--src/core/cs_clear.c44
1 files changed, 2 insertions, 42 deletions
diff --git a/src/core/cs_clear.c b/src/core/cs_clear.c
index 043b8863c..db0f1d52f 100644
--- a/src/core/cs_clear.c
+++ b/src/core/cs_clear.c
@@ -146,7 +146,6 @@ int do_clear(User * u)
free(invites);
} else if (stricmp(what, "modes") == 0) {
- char buf[BUFSIZE], *end = buf;
char *argv[2];
if (c->mode) {
@@ -190,45 +189,7 @@ int do_clear(User * u)
}
check_modes(c);
}
-
-
-
- /* TODO: decide if the above implementation is better than this one. */
-
- if (0) {
- CBModeInfo *cbmi = cbmodeinfos;
- CBMode *cbm;
-
- do {
- if (c->mode & cbmi->flag)
- *end++ = cbmi->mode;
- } while ((++cbmi)->flag != 0);
-
- cbmi = cbmodeinfos;
-
- do {
- if (cbmi->getvalue && (c->mode & cbmi->flag)
- && !(cbmi->flags & CBM_MINUS_NO_ARG)) {
- char *value = cbmi->getvalue(c);
-
- if (value) {
- *end++ = ' ';
- while (*value)
- *end++ = *value++;
-
- /* Free the value */
- cbm = &cbmodes[(int) cbmi->mode];
- cbm->setvalue(c, NULL);
- }
- }
- } while ((++cbmi)->flag != 0);
-
- *end = 0;
-
- anope_cmd_mode(whosends(ci), c->name, "-%s", buf);
- c->mode = 0;
- check_modes(c);
- }
+
notice_lang(s_ChanServ, u, CHAN_CLEARED_MODES, chan);
} else if (stricmp(what, "ops") == 0) {
char *av[3];
@@ -245,7 +206,6 @@ int do_clear(User * u)
}
for (cu = c->users; cu; cu = next) {
next = cu->next;
- av[0] = sstrdup(chan);
if (!chan_has_user_status(c, cu->user, CUS_OP)) {
if (!chan_has_user_status(c, cu->user, CUS_PROTECT)) {
if (!chan_has_user_status(c, cu->user, CUS_OWNER)) {
@@ -267,8 +227,8 @@ int do_clear(User * u)
do_cmode(s_ChanServ, 3, av);
free(av[2]);
free(av[1]);
- free(av[0]);
}
+ free(av[0]);
} else {
for (cu = c->users; cu; cu = next) {
next = cu->next;