From 94f853177603046717ba227b1f406c45e1b2b05a Mon Sep 17 00:00:00 2001 From: Jeff Becker Date: Mon, 26 Aug 2019 10:29:29 -0400 Subject: [PATCH] more fixups --- llarp/config/config.cpp | 19 ++++++++++++++++--- llarp/iwp/session.cpp | 15 +++++++-------- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/llarp/config/config.cpp b/llarp/config/config.cpp index 75a193ac3..ca5f69b62 100644 --- a/llarp/config/config.cpp +++ b/llarp/config/config.cpp @@ -207,17 +207,30 @@ namespace llarp std::unordered_set< std::string > parsed_opts; std::string v = tostr(val); std::string::size_type idx; + static constexpr char delimiter = ','; + static const auto strip_spaces = [](const auto &begin, + const auto &end) -> std::string { + std::string val; + std::for_each(begin, end, [&val](const char &ch) { + // strip spaces + if(::isspace(ch) || ch == delimiter) + return; + val += ch; + }); + return val; + }; + do { - idx = v.find_first_of(','); + idx = v.find_first_of(delimiter); if(idx != std::string::npos) { - parsed_opts.insert(v.substr(0, idx)); + parsed_opts.emplace(strip_spaces(v.begin(), v.begin() + idx)); v = v.substr(idx + 1); } else { - parsed_opts.insert(v); + parsed_opts.insert(strip_spaces(v.begin(), v.end())); } } while(idx != std::string::npos); std::unordered_set< std::string > opts; diff --git a/llarp/iwp/session.cpp b/llarp/iwp/session.cpp index 235761b8d..26499b6d6 100644 --- a/llarp/iwp/session.cpp +++ b/llarp/iwp/session.cpp @@ -416,25 +416,24 @@ namespace llarp { case Command::eXMIT: HandleXMIT(std::move(result)); - break; + return; case Command::eDATA: HandleDATA(std::move(result)); - break; + return; case Command::eACKS: HandleACKS(std::move(result)); - break; + return; case Command::ePING: HandlePING(std::move(result)); - break; + return; case Command::eNACK: HandleNACK(std::move(result)); - break; + return; case Command::eCLOS: HandleCLOS(std::move(result)); - break; - default: - LogError("invalid command ", int(result[1])); + return; } + LogError("invalid command ", int(result[1])); } void