Make type conversions explicit.
This commit is contained in:
parent
7c2e33949b
commit
f8040f4803
|
@ -55,7 +55,7 @@ const string read_input()
|
||||||
|
|
||||||
void send_message(const string &message)
|
void send_message(const string &message)
|
||||||
{
|
{
|
||||||
const uint32_t length = message.length() + 2;
|
const uint32_t length = static_cast<uint32_t>(message.length() + 2);
|
||||||
cout.write(reinterpret_cast<const char*>(&length), sizeof(uint32_t));
|
cout.write(reinterpret_cast<const char*>(&length), sizeof(uint32_t));
|
||||||
cout << '"' << message << '"';
|
cout << '"' << message << '"';
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,7 @@ using std::vector;
|
||||||
using std::cerr;
|
using std::cerr;
|
||||||
using std::endl;
|
using std::endl;
|
||||||
using std::move;
|
using std::move;
|
||||||
|
using std::uint32_t;
|
||||||
using Poco::Net::HTTPClientSession;
|
using Poco::Net::HTTPClientSession;
|
||||||
using Poco::Net::HTTPSClientSession;
|
using Poco::Net::HTTPSClientSession;
|
||||||
using Poco::Net::HTTPRequest;
|
using Poco::Net::HTTPRequest;
|
||||||
|
@ -92,12 +93,13 @@ void URI::set_proxy()
|
||||||
proxy.host = matches[3];
|
proxy.host = matches[3];
|
||||||
if (!matches[4].empty())
|
if (!matches[4].empty())
|
||||||
{
|
{
|
||||||
const std::uint32_t &port = std::stoul(matches[4]);
|
// NOLINTNEXTLINE(google-runtime-lint) - Need to use same as stoul.
|
||||||
|
const unsigned long port = std::stoul(matches[4]);
|
||||||
if (port > 65535)
|
if (port > 65535)
|
||||||
{
|
{
|
||||||
throw std::invalid_argument("Proxy port number out of range");
|
throw std::invalid_argument("Proxy port number out of range");
|
||||||
}
|
}
|
||||||
proxy.port = port;
|
proxy.port = static_cast<uint16_t>(port);
|
||||||
}
|
}
|
||||||
HTTPClientSession::setGlobalProxyConfig(proxy);
|
HTTPClientSession::setGlobalProxyConfig(proxy);
|
||||||
}
|
}
|
||||||
|
@ -331,11 +333,11 @@ string URI::unescape_html(string html)
|
||||||
// 'x' in front of the number means it's hexadecimal, else decimal.
|
// 'x' in front of the number means it's hexadecimal, else decimal.
|
||||||
if (matches[1].length != 0)
|
if (matches[1].length != 0)
|
||||||
{
|
{
|
||||||
codepoint = std::stoi(number, nullptr, 16);
|
codepoint = static_cast<char32_t>(std::stoul(number, nullptr, 16));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
codepoint = std::stoi(number, nullptr, 10);
|
codepoint = static_cast<char32_t>(std::stoi(number, nullptr, 10));
|
||||||
}
|
}
|
||||||
const string unicode = u8c.to_bytes(codepoint);
|
const string unicode = u8c.to_bytes(codepoint);
|
||||||
html.replace(matches[0].offset, matches[0].length, unicode);
|
html.replace(matches[0].offset, matches[0].length, unicode);
|
||||||
|
@ -664,8 +666,14 @@ string URI::cut_text(const string &text, const uint16_t n_chars) const
|
||||||
{
|
{
|
||||||
constexpr char suffix[] = " […]";
|
constexpr char suffix[] = " […]";
|
||||||
constexpr auto suffix_len = std::end(suffix) - std::begin(suffix) - 1;
|
constexpr auto suffix_len = std::end(suffix) - std::begin(suffix) - 1;
|
||||||
|
if (n_chars <= suffix_len)
|
||||||
|
{
|
||||||
|
throw std::invalid_argument("n_chars has to be greater than "
|
||||||
|
+ std::to_string(suffix_len));
|
||||||
|
}
|
||||||
|
|
||||||
const size_t pos = text.rfind(' ', n_chars - suffix_len);
|
const size_t pos =
|
||||||
|
text.rfind(' ', static_cast<size_t>(n_chars - suffix_len));
|
||||||
|
|
||||||
return text.substr(0, pos) + suffix;
|
return text.substr(0, pos) + suffix;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue