summaryrefslogtreecommitdiff
path: root/src/servers.c
diff options
context:
space:
mode:
authorrburchell <rburchell@5417fbe8-f217-4b02-8779-1006273d7864>2009-02-15 22:29:18 +0000
committerrburchell <rburchell@5417fbe8-f217-4b02-8779-1006273d7864>2009-02-15 22:29:18 +0000
commitd1611b640bcd27e1a91a99ef32127bc722e50a36 (patch)
treeb18c77b07b74b70f5613b106aa2a81baa6227f35 /src/servers.c
parent0e5b71923b25d908167e7ef9d07c6c217827e901 (diff)
Remove User::na, use User::nc everywhere. Will probably break everything, but opens the door to decoupling NC from NA, and means commands can now be run without bothering about changinc nick :)
More tweaking for na/nc usage. It compiles, but it's still a work in progress. Again, this compiles, but I *bet* there's no chance in hell it'll work. :) Slightly better. Set User::nc correctly. Fix crash with unregistered nicks in core and ns_access. Fix glist to work when you're not on that particular nick. Fix ns_set to not crash and burn horribly. Fix ns_set and ns_logout to not do bad things. git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2076 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/servers.c')
-rw-r--r--src/servers.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/servers.c b/src/servers.c
index 3525c2826..576abf8de 100644
--- a/src/servers.c
+++ b/src/servers.c
@@ -204,8 +204,9 @@ static void delete_server(Server * serv, const char *quitreason)
u = firstuser();
while (u) {
unext = nextuser();
- if (u->server == serv) {
- if ((na = u->na) && !(na->status & NS_FORBIDDEN)
+ if (u->server == serv)
+ {
+ if ((na = findnick(u->nick)) && !(na->status & NS_FORBIDDEN)
&& (!(na->nc->flags & NI_SUSPENDED))
&& (na->status & (NS_IDENTIFIED | NS_RECOGNIZED))) {
na->last_seen = time(NULL);
@@ -214,6 +215,7 @@ static void delete_server(Server * serv, const char *quitreason)
na->last_quit =
(quitreason ? sstrdup(quitreason) : NULL);
}
+
if (LimitSessions) {
del_session(u->host);
}