static std::string trim(const std::string & str) {
size_t start = 0;
size_t end = str.size();
- while (start < end && isspace(str[start])) {
+ while (start < end && isspace(static_cast<unsigned char>(str[start]))) {
start += 1;
}
- while (end > start && isspace(str[end - 1])) {
+ while (end > start && isspace(static_cast<unsigned char>(str[end - 1]))) {
end -= 1;
}
return str.substr(start, end - start);