diff options
Diffstat (limited to 'src/core/hle')
| -rw-r--r-- | src/core/hle/service/acc/profile_manager.cpp | 10 | ||||
| -rw-r--r-- | src/core/hle/service/acc/profile_manager.h | 12 | 
2 files changed, 12 insertions, 10 deletions
| diff --git a/src/core/hle/service/acc/profile_manager.cpp b/src/core/hle/service/acc/profile_manager.cpp index fe9921fb6..9440dc555 100644 --- a/src/core/hle/service/acc/profile_manager.cpp +++ b/src/core/hle/service/acc/profile_manager.cpp @@ -2,6 +2,7 @@  // Licensed under GPLv2 or any later version  // Refer to the license.txt file included. +#include <random>  #include <boost/optional.hpp>  #include "core/hle/service/acc/profile_manager.h"  #include "core/settings.h" @@ -12,6 +13,15 @@ constexpr ResultCode ERROR_TOO_MANY_USERS(ErrorModule::Account, -1);  constexpr ResultCode ERROR_USER_ALREADY_EXISTS(ErrorModule::Account, -2);  constexpr ResultCode ERROR_ARGUMENT_IS_NULL(ErrorModule::Account, 20); +const UUID& UUID::Generate() { +    std::random_device device; +    std::mt19937 gen(device()); +    std::uniform_int_distribution<u64> distribution(1, std::numeric_limits<u64>::max()); +    uuid[0] = distribution(gen); +    uuid[1] = distribution(gen); +    return *this; +} +  ProfileManager::ProfileManager() {      // TODO(ogniK): Create the default user we have for now until loading/saving users is added      auto user_uuid = UUID{1, 0}; diff --git a/src/core/hle/service/acc/profile_manager.h b/src/core/hle/service/acc/profile_manager.h index 314bccbf9..91f6f03a9 100644 --- a/src/core/hle/service/acc/profile_manager.h +++ b/src/core/hle/service/acc/profile_manager.h @@ -5,7 +5,7 @@  #pragma once  #include <array> -#include <random> +  #include "boost/optional.hpp"  #include "common/common_types.h"  #include "common/swap.h" @@ -38,15 +38,7 @@ struct UUID {      }      // TODO(ogniK): Properly generate uuids based on RFC-4122 -    const UUID& Generate() { -        std::random_device device; -        std::mt19937 gen(device()); -        std::uniform_int_distribution<uint64_t> distribution(1, -                                                             std::numeric_limits<uint64_t>::max()); -        uuid[0] = distribution(gen); -        uuid[1] = distribution(gen); -        return *this; -    } +    const UUID& Generate();      // Set the UUID to {0,0} to be considered an invalid user      void Invalidate() { | 
