diff options
author | cyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864> | 2009-03-23 02:54:46 +0000 |
---|---|---|
committer | cyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864> | 2009-03-23 02:54:46 +0000 |
commit | 1ba8e796c7fb72ff8d0b5a9b0eb3ddb7a89326a0 (patch) | |
tree | e772f9e6e081167dfb3d814378bd8304c0d36f52 /src | |
parent | 645c224ff74d9727b2da6dbcd03d9b05d1035c5d (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.c | 6 |
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); } } |