diff options
author | Sadie Powell <sadie@witchery.services> | 2024-03-11 13:53:05 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2024-03-11 19:17:29 +0000 |
commit | 29e7674e56bf2b829bba22def2760d034a76e788 (patch) | |
tree | f40049ba995b03dd7c510d88f9f19db2d2e65a2e /modules/proxyscan.cpp | |
parent | e2df7d4d01f8fdb41c49ce8efc462cab005e7d5c (diff) |
Replace convertTo/stringify with non-throwing alternatives.
Having these throw is terrible for ergonomics and there are loads
of places where the exception was either silently ignored or not
handled at all. Having a function which returns an optional and
another that returns a default works a lot better imo.
Diffstat (limited to 'modules/proxyscan.cpp')
-rw-r--r-- | modules/proxyscan.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/modules/proxyscan.cpp b/modules/proxyscan.cpp index 42beb37e5..e7c761c9f 100644 --- a/modules/proxyscan.cpp +++ b/modules/proxyscan.cpp @@ -88,7 +88,7 @@ protected: reason = reason.replace_all_cs("%t", this->GetType()); reason = reason.replace_all_cs("%i", this->conaddr.addr()); - reason = reason.replace_all_cs("%p", stringify(this->conaddr.port())); + reason = reason.replace_all_cs("%p", Anope::ToString(this->conaddr.port())); BotInfo *OperServ = Config->GetClient("OperServ"); Log(OperServ) << "PROXYSCAN: Open " << this->GetType() << " proxy found on " << this->conaddr.str() << " (" << reason << ")"; @@ -321,12 +321,8 @@ public: commasepstream sep2(block->Get<const Anope::string>("port")); while (sep2.GetToken(token)) { - try - { - unsigned short port = convertTo<unsigned short>(token); - p.ports.push_back(port); - } - catch (const ConvertException &) { } + if (auto port = Anope::TryConvert<unsigned short>(token)) + p.ports.push_back(port.value()); } if (p.ports.empty()) continue; |