vector-of-bool 5 лет назад
Родитель
Сommit
42d5da801a
6 измененных файлов: 13 добавлений и 9 удалений
  1. +4
    -2
      src/browns/md5.test.cpp
  2. +4
    -2
      src/dds/package_manifest.cpp
  3. +2
    -2
      src/dds/temp.win.cpp
  4. +1
    -1
      src/libman/parse.hpp
  5. +1
    -1
      src/neo/buffer.hpp
  6. +1
    -1
      src/semver/version.hpp

+ 4
- 2
src/browns/md5.test.cpp Просмотреть файл

browns::md5 hash; browns::md5 hash;
hash.feed(neo::buffer(str)); hash.feed(neo::buffer(str));
hash.pad(); hash.pad();
auto dig = hash.digest();
auto dig = hash.digest();
auto dig_str = browns::format_digest(dig); auto dig_str = browns::format_digest(dig);
if (dig_str != expect_md5) { if (dig_str != expect_md5) {
std::cerr << "Hash of '" << str << "' did not match. Expected '" << expect_md5 std::cerr << "Hash of '" << str << "' did not match. Expected '" << expect_md5
n_fails += check_hash("The quick brown fox jumps over the lazy dog", n_fails += check_hash("The quick brown fox jumps over the lazy dog",
"9e107d9d372bb6826bd81d3542a419d6"); "9e107d9d372bb6826bd81d3542a419d6");
n_fails += check_hash("", "d41d8cd98f00b204e9800998ecf8427e"); n_fails += check_hash("", "d41d8cd98f00b204e9800998ecf8427e");
n_fails += check_hash("WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW", "967ce152b23edc20ebd23b7eba57277c");
n_fails += check_hash(
"WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW",
"967ce152b23edc20ebd23b7eba57277c");
n_fails += check_hash("WWWWWWWWWWWWWWWWWWWWWWWWWWWWW", "9aff577d3248b8889b22f24ee9665c17"); n_fails += check_hash("WWWWWWWWWWWWWWWWWWWWWWWWWWWWW", "9aff577d3248b8889b22f24ee9665c17");
return n_fails; return n_fails;
} }

+ 4
- 2
src/dds/package_manifest.cpp Просмотреть файл

lm::reject_unknown()); lm::reject_unknown());


if (ret.name.empty()) { if (ret.name.empty()) {
throw std::runtime_error(fmt::format("'Name' field in [{}] may not be an empty string", fpath.string()));
throw std::runtime_error(
fmt::format("'Name' field in [{}] may not be an empty string", fpath.string()));
} }
if (version_str.empty()) { if (version_str.empty()) {
throw std::runtime_error(fmt::format("'Version' field in [{}] may not be an empty string", fpath.string()));
throw std::runtime_error(
fmt::format("'Version' field in [{}] may not be an empty string", fpath.string()));
} }


ret.version = semver::version::parse(version_str); ret.version = semver::version::parse(version_str);

+ 2
- 2
src/dds/temp.win.cpp Просмотреть файл

auto base = fs::temp_directory_path(); auto base = fs::temp_directory_path();


::UUID uuid; ::UUID uuid;
auto status = ::UuidCreate(&uuid);
auto status = ::UuidCreate(&uuid);
assert(status == RPC_S_OK || status == RPC_S_UUID_LOCAL_ONLY assert(status == RPC_S_OK || status == RPC_S_UUID_LOCAL_ONLY
|| status == RPC_S_UUID_NO_ADDRESS); || status == RPC_S_UUID_NO_ADDRESS);


std::string uuid_std_str(reinterpret_cast<const char*>(uuid_str)); std::string uuid_std_str(reinterpret_cast<const char*>(uuid_str));
::RpcStringFree(&uuid_str); ::RpcStringFree(&uuid_str);


auto new_dir = base / ("dds-" + uuid_std_str);
auto new_dir = base / ("dds-" + uuid_std_str);
std::error_code ec; std::error_code ec;
fs::create_directory(new_dir); fs::create_directory(new_dir);
return std::make_shared<impl>(std::move(new_dir)); return std::make_shared<impl>(std::move(new_dir));

+ 1
- 1
src/libman/parse.hpp Просмотреть файл

}; };


template <typename... Items> template <typename... Items>
auto read(std::string_view context[[maybe_unused]], const pair_list& pairs, Items... is) {
auto read(std::string_view context [[maybe_unused]], const pair_list& pairs, Items... is) {
std::vector<pair> bad_pairs; std::vector<pair> bad_pairs;
for (auto [key, value] : pairs.items()) { for (auto [key, value] : pairs.items()) {
auto did_read = (is.read_one(context, key, value) || ...); auto did_read = (is.read_one(context, key, value) || ...);

+ 1
- 1
src/neo/buffer.hpp Просмотреть файл

} }


template <typename Char, typename Traits> template <typename Char, typename Traits>
constexpr const_buffer buffer(std::basic_string_view<Char, Traits> sv) {
constexpr const_buffer buffer(std::basic_string_view<Char, Traits> sv) {
return buffer(sv, sv.size()); return buffer(sv, sv.size());
} }



+ 1
- 1
src/semver/version.hpp Просмотреть файл

#include <stdexcept> #include <stdexcept>
#include <string> #include <string>
#include <string_view> #include <string_view>
#include <vector>
#include <tuple> #include <tuple>
#include <vector>


namespace semver { namespace semver {



Загрузка…
Отмена
Сохранить