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/protocol/ngircd.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/protocol/ngircd.cpp')
-rw-r--r-- | modules/protocol/ngircd.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/modules/protocol/ngircd.cpp b/modules/protocol/ngircd.cpp index 773fab805..ea9d92294 100644 --- a/modules/protocol/ngircd.cpp +++ b/modules/protocol/ngircd.cpp @@ -178,12 +178,11 @@ struct IRCDMessage005 final data = param.substr(pos+1, param.length()); if (parameter == "MODES") { - unsigned maxmodes = convertTo<unsigned>(data); - IRCD->MaxModes = maxmodes; + IRCD->MaxModes = Anope::Convert<unsigned>(data, IRCD->MaxModes); } else if (parameter == "NICKLEN") { - nicklen = data.is_pos_number_only() ? convertTo<size_t>(data) : 0; + nicklen = Anope::Convert<size_t>(data, 0); } } } @@ -557,7 +556,7 @@ struct IRCDMessageServer final else { // our uplink is introducing a new server - unsigned int hops = params[1].is_pos_number_only() ? convertTo<unsigned>(params[1]) : 0; + auto hops = Anope::Convert<unsigned>(params[1], 0); new Server(source.GetServer(), params[0], hops, params[3], params[2]); } /* |