summaryrefslogtreecommitdiff
path: root/modules/nickserv/suspend.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2016-12-01 09:25:53 -0500
committerAdam <Adam@anope.org>2016-12-01 09:25:53 -0500
commitca28f9cfcbff0fbdb2afe96f1427245f83db7c47 (patch)
treeac5de801a4db01a7cb689ec670537ad74c7c53e6 /modules/nickserv/suspend.cpp
parent2f512281029fbf4f7ef9832e05804831ad2d9ba2 (diff)
Allow objects to opt out of gc, don't gc accounts with users logged in
Also store cached state with the field by using Serialize::Storage for field storage
Diffstat (limited to 'modules/nickserv/suspend.cpp')
-rw-r--r--modules/nickserv/suspend.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/modules/nickserv/suspend.cpp b/modules/nickserv/suspend.cpp
index 4ac1d7456..90362bcf2 100644
--- a/modules/nickserv/suspend.cpp
+++ b/modules/nickserv/suspend.cpp
@@ -26,13 +26,12 @@ class NSSuspendInfoImpl : public NSSuspendInfo
{
friend class NSSuspendType;
- NickServ::Account *account = nullptr;
- Anope::string by, reason;
- time_t when = 0, expires = 0;
+ Serialize::Storage<NickServ::Account *> account;
+ Serialize::Storage<Anope::string> by, reason;
+ Serialize::Storage<time_t> when, expires;
public:
- NSSuspendInfoImpl(Serialize::TypeBase *type) : NSSuspendInfo(type) { }
- NSSuspendInfoImpl(Serialize::TypeBase *type, Serialize::ID id) : NSSuspendInfo(type, id) { }
+ using NSSuspendInfo::NSSuspendInfo;
NickServ::Account *GetAccount() override;
void SetAccount(NickServ::Account *) override;