mirror of
https://github.com/wesnoth/wesnoth
synced 2025-04-22 12:16:24 +00:00
Remove unnecessary template and optional use
This commit is contained in:
parent
bb07f533ed
commit
fa238045b1
@ -231,13 +231,15 @@ bool have_wml(const utils::optional_reference<const config>& cfg)
|
|||||||
*
|
*
|
||||||
* Null WML objects are skipped.
|
* Null WML objects are skipped.
|
||||||
*/
|
*/
|
||||||
template<typename... Vals>
|
std::vector<std::string> multi_find_illegal_names(const std::initializer_list<optional_const_config>& cfgs)
|
||||||
utils::optional<std::vector<std::string>> multi_find_illegal_names(const Vals&... args)
|
|
||||||
{
|
{
|
||||||
std::vector<std::string> names;
|
std::vector<std::string> names;
|
||||||
((args && check_names_legal(*args, &names)), ...);
|
for(auto cfg : cfgs) {
|
||||||
|
if(cfg) {
|
||||||
return !names.empty() ? utils::optional(names) : utils::nullopt;
|
check_names_legal(*cfg, &names);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return names;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -245,13 +247,15 @@ utils::optional<std::vector<std::string>> multi_find_illegal_names(const Vals&..
|
|||||||
*
|
*
|
||||||
* Null WML objects are skipped.
|
* Null WML objects are skipped.
|
||||||
*/
|
*/
|
||||||
template<typename... Vals>
|
std::vector<std::string> multi_find_case_conflicts(const std::initializer_list<optional_const_config>& cfgs)
|
||||||
utils::optional<std::vector<std::string>> multi_find_case_conflicts(const Vals&... args)
|
|
||||||
{
|
{
|
||||||
std::vector<std::string> names;
|
std::vector<std::string> names;
|
||||||
((args && check_case_insensitive_duplicates(*args, &names)), ...);
|
for(auto cfg : cfgs) {
|
||||||
|
if(cfg) {
|
||||||
return !names.empty() ? utils::optional(names) : utils::nullopt;
|
check_case_insensitive_duplicates(*cfg, &names);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return names;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1469,15 +1473,15 @@ ADDON_CHECK_STATUS server::validate_addon(const server::request& req, config*& e
|
|||||||
return ADDON_CHECK_STATUS::NO_EMAIL;
|
return ADDON_CHECK_STATUS::NO_EMAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(const auto badnames = multi_find_illegal_names(data, addlist, removelist)) {
|
if(std::vector<std::string> badnames = multi_find_illegal_names({data, addlist, removelist}); !badnames.empty()) {
|
||||||
error_data = utils::join(*badnames, "\n");
|
error_data = utils::join(badnames, "\n");
|
||||||
LOG_CS << "Validation error: invalid filenames in add-on pack (" << badnames->size() << " entries)";
|
LOG_CS << "Validation error: invalid filenames in add-on pack (" << badnames.size() << " entries)";
|
||||||
return ADDON_CHECK_STATUS::ILLEGAL_FILENAME;
|
return ADDON_CHECK_STATUS::ILLEGAL_FILENAME;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(const auto badnames = multi_find_case_conflicts(data, addlist, removelist)) {
|
if(std::vector<std::string> badnames = multi_find_case_conflicts({data, addlist, removelist}); !badnames.empty()) {
|
||||||
error_data = utils::join(*badnames, "\n");
|
error_data = utils::join(badnames, "\n");
|
||||||
LOG_CS << "Validation error: case conflicts in add-on pack (" << badnames->size() << " entries)";
|
LOG_CS << "Validation error: case conflicts in add-on pack (" << badnames.size() << " entries)";
|
||||||
return ADDON_CHECK_STATUS::FILENAME_CASE_CONFLICT;
|
return ADDON_CHECK_STATUS::FILENAME_CASE_CONFLICT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user