summaryrefslogtreecommitdiff
path: root/modules/chanserv/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/chanserv/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/chanserv/suspend.cpp')
-rw-r--r--modules/chanserv/suspend.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/modules/chanserv/suspend.cpp b/modules/chanserv/suspend.cpp
index c825c35f7..c8c451548 100644
--- a/modules/chanserv/suspend.cpp
+++ b/modules/chanserv/suspend.cpp
@@ -27,13 +27,12 @@ class CSSuspendInfoImpl : public CSSuspendInfo
{
friend class CSSuspendType;
- ChanServ::Channel *channel = nullptr;
- Anope::string by, reason;
- time_t when = 0, expires = 0;
+ Serialize::Storage<ChanServ::Channel *> channel;
+ Serialize::Storage<Anope::string> by, reason;
+ Serialize::Storage<time_t> when, expires;
public:
- CSSuspendInfoImpl(Serialize::TypeBase *type) : CSSuspendInfo(type) { }
- CSSuspendInfoImpl(Serialize::TypeBase *type, Serialize::ID id) : CSSuspendInfo(type, id) { }
+ using CSSuspendInfo::CSSuspendInfo;
ChanServ::Channel *GetChannel() override;
void SetChannel(ChanServ::Channel *s) override;