summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/users.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/users.cpp b/src/users.cpp
index 6f676e79b..5c993fcf0 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -356,7 +356,8 @@ void User::Identify(NickAlias *na)
}
this->Login(na->nc);
- ircdproto->SendAccountLogin(this, this->Account());
+ if (!na->nc->HasFlag(NI_UNCONFIRMED))
+ ircdproto->SendAccountLogin(this, this->Account());
ircdproto->SetAutoIdentificationToken(this);
FOREACH_MOD(I_OnNickIdentify, OnNickIdentify(this));
@@ -847,9 +848,11 @@ User *do_nick(const Anope::string &source, const Anope::string &nick, const Anop
{
na->last_seen = Anope::CurTime;
user->UpdateHost();
- ircdproto->SetAutoIdentificationToken(user);
if (na->nc->HasFlag(NI_UNCONFIRMED) == false)
+ {
user->SetMode(nickserv->Bot(), UMODE_REGISTERED);
+ ircdproto->SetAutoIdentificationToken(user);
+ }
Log(nickserv->Bot()) << user->GetMask() << " automatically identified for group " << user->Account()->display;
}