summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/commands/ns_info.cpp3
-rw-r--r--modules/pseudoclients/nickserv.cpp4
2 files changed, 5 insertions, 2 deletions
diff --git a/modules/commands/ns_info.cpp b/modules/commands/ns_info.cpp
index 8fc5aa639..1800ac440 100644
--- a/modules/commands/ns_info.cpp
+++ b/modules/commands/ns_info.cpp
@@ -42,7 +42,10 @@ class CommandNSInfo : public Command
/* Is the real owner of the nick we're looking up online? -TheShadow */
User *u2 = User::Find(na->nick);
if (u2 && u2->Account() == na->nc)
+ {
nick_online = true;
+ na->last_seen = Anope::CurTime;
+ }
if (has_auspex || na->nc == source.GetAccount())
show_hidden = true;
diff --git a/modules/pseudoclients/nickserv.cpp b/modules/pseudoclients/nickserv.cpp
index c57039bee..9b9d8d513 100644
--- a/modules/pseudoclients/nickserv.cpp
+++ b/modules/pseudoclients/nickserv.cpp
@@ -497,7 +497,7 @@ class NickServCore : public Module, public NickServService
++it;
User *u = User::Find(na->nick);
- if (u && (na->nc->HasExt("NS_SECURE") ? u->IsIdentified(true) : u->IsRecognized()))
+ if (u && (u->IsIdentified(true) || u->IsRecognized()))
na->last_seen = Anope::CurTime;
bool expire = false;
@@ -521,7 +521,7 @@ class NickServCore : public Module, public NickServService
if (!na->nc->HasExt("UNCONFIRMED"))
{
time_t nickserv_expire = Config->GetModule(this)->Get<time_t>("expire");
- if (!na->HasExt("NS_NO_EXPIRE") && nickserv_expire && !Anope::NoExpire)
+ if (!na->HasExt("NS_NO_EXPIRE") && nickserv_expire && !Anope::NoExpire && na->last_seen != Anope::CurTime)
info[_("Expires")] = Anope::strftime(na->last_seen + nickserv_expire);
}
else