summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorcyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2009-03-23 02:54:46 +0000
committercyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2009-03-23 02:54:46 +0000
commit1ba8e796c7fb72ff8d0b5a9b0eb3ddb7a89326a0 (patch)
treee772f9e6e081167dfb3d814378bd8304c0d36f52 /src
parent645c224ff74d9727b2da6dbcd03d9b05d1035c5d (diff)
Backport of bugfix for buf #1065 from SVN r2192, original patch from DukePyrolator, force a user off a nick when it is suspended.
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/stable@2193 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src')
-rw-r--r--src/core/ns_suspend.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/ns_suspend.c b/src/core/ns_suspend.c
index 4c9943875..6ca8eba6c 100644
--- a/src/core/ns_suspend.c
+++ b/src/core/ns_suspend.c
@@ -75,6 +75,7 @@ void myNickServHelp(User * u)
int do_suspend(User * u)
{
NickAlias *na, *na2;
+ User *u2;
char *nick = strtok(NULL, " ");
char *reason = strtok(NULL, "");
int i;
@@ -115,6 +116,11 @@ int do_suspend(User * u)
if (na2->nc == na->nc) {
na2->status &= ~(NS_IDENTIFIED | NS_RECOGNIZED);
na2->last_quit = sstrdup(reason);
+ /* remove nicktracking */
+ if ((u2 = finduser(na2->nick)))
+ u2->nc = NULL;
+ /* force guestnick */
+ collide(na2, 0);
}
}