Commit 109159e0 authored by Max Kellermann's avatar Max Kellermann

Permission: use StringView::Split()

parent 409b877e
...@@ -30,7 +30,6 @@ ...@@ -30,7 +30,6 @@
#include "util/StringView.hxx" #include "util/StringView.hxx"
#include <cassert> #include <cassert>
#include <cstring>
#include <map> #include <map>
#include <string> #include <string>
#include <utility> #include <utility>
...@@ -100,18 +99,15 @@ initPermissions(const ConfigData &config) ...@@ -100,18 +99,15 @@ initPermissions(const ConfigData &config)
for (const auto &param : config.GetParamList(ConfigOption::PASSWORD)) { for (const auto &param : config.GetParamList(ConfigOption::PASSWORD)) {
permission_default = 0; permission_default = 0;
param.With([](const char *value){ param.With([](const StringView value){
const char *separator = std::strchr(value, const auto [password, permissions] =
PERMISSION_PASSWORD_CHAR); value.Split(PERMISSION_PASSWORD_CHAR);
if (permissions == nullptr)
if (separator == nullptr)
throw FormatRuntimeError("\"%c\" not found in password string", throw FormatRuntimeError("\"%c\" not found in password string",
PERMISSION_PASSWORD_CHAR); PERMISSION_PASSWORD_CHAR);
std::string password(value, separator); permission_passwords.emplace(password,
parsePermissions(permissions));
unsigned permission = parsePermissions(separator + 1);
permission_passwords.emplace(std::move(password), permission);
}); });
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment