summaryrefslogtreecommitdiff
path: root/src/users.c
diff options
context:
space:
mode:
authorAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2010-06-03 19:01:28 +0000
committerAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2010-06-03 19:01:28 +0000
commit9abdb4e2e96b7b7699ce3ec66633bcc8f14e025d (patch)
treebb1f508aad9455d89f332c96ed606a770debee77 /src/users.c
parentf43f6c386431dfc2e7668916b4582a98c18ca6c3 (diff)
Added inspircd2.0 protocol module, moved usermode +r unsetting on nick change to the protocol modules to fix inspircd1.2s weird usermode +r behavior
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2997 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/users.c')
-rw-r--r--src/users.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/src/users.c b/src/users.c
index 57e392bc4..4efc355b4 100644
--- a/src/users.c
+++ b/src/users.c
@@ -977,19 +977,9 @@ User *do_nick(const char *source, const char *nick, const char *username, const
if (old_na && (old_na->nc == user->Account() || user->IsRecognized()))
old_na->last_seen = time(NULL);
- /* On nick change -r gets set on nick changes but we aren't informed about it, causing SetMode(UMODE_REGISTERED)
- * to fail (we think it is already set). Remove it silently like the IRCds
- */
- if (ircd->check_nick_id)
- {
- UserMode *um = ModeManager::FindUserModeByName(UMODE_REGISTERED);
- if (um)
- user->RemoveModeInternal(um);
- }
-
std::string oldnick = user->nick;
user->SetNewNick(nick);
- FOREACH_MOD(I_OnUserNickChange, OnUserNickChange(user, oldnick.c_str()));
+ FOREACH_MOD(I_OnUserNickChange, OnUserNickChange(user, oldnick));
if (old_na)
old_na->OnCancel(user);