From ece55718e73e0f3f25101d9b32c2900ac2df6849 Mon Sep 17 00:00:00 2001 From: adam- Date: Sat, 15 Aug 2009 01:05:52 +0000 Subject: [PATCH] Set -r on nick change if appropriate and make nick tracking work correctly git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2451 5417fbe8-f217-4b02-8779-1006273d7864 --- src/users.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/users.c b/src/users.c index 18baef319..0569ad60b 100644 --- a/src/users.c +++ b/src/users.c @@ -730,8 +730,15 @@ User *do_nick(const char *source, const char *nick, const char *username, const if (!nc_changed) { NickAlias *tmpcore = findnick(user->nick); + if (tmpcore) tmpcore->status |= status; + + /* If the new nick isnt registerd or its registerd and not yours */ + if (!tmpcore || (old_na && tmpcore->nc != old_na->nc)) + { + ircdproto->SendUnregisteredNick(user); + } } else { @@ -757,7 +764,7 @@ User *do_nick(const char *source, const char *nick, const char *username, const nc_changed = 0; } - if (nc_changed || !nick_recognized(user)) + if (!ntmp || ntmp->nc != user->nc || nc_changed) { if (validate_user(user)) check_memos(user);