summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service')
-rw-r--r--src/core/hle/service/am/am.cpp8
-rw-r--r--src/core/hle/service/es/es.cpp10
-rw-r--r--src/core/hle/service/mii/mii_manager.cpp2
-rw-r--r--src/core/hle/service/mii/raw_data.cpp104
-rw-r--r--src/core/hle/service/mii/raw_data.h2
5 files changed, 13 insertions, 113 deletions
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp
index da33f0e44..e92f400de 100644
--- a/src/core/hle/service/am/am.cpp
+++ b/src/core/hle/service/am/am.cpp
@@ -341,7 +341,7 @@ void ISelfController::Exit(HLERequestContext& ctx) {
void ISelfController::LockExit(HLERequestContext& ctx) {
LOG_DEBUG(Service_AM, "called");
- system.SetExitLock(true);
+ system.SetExitLocked(true);
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ResultSuccess);
@@ -350,10 +350,14 @@ void ISelfController::LockExit(HLERequestContext& ctx) {
void ISelfController::UnlockExit(HLERequestContext& ctx) {
LOG_DEBUG(Service_AM, "called");
- system.SetExitLock(false);
+ system.SetExitLocked(false);
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ResultSuccess);
+
+ if (system.GetExitRequested()) {
+ system.Exit();
+ }
}
void ISelfController::EnterFatalSection(HLERequestContext& ctx) {
diff --git a/src/core/hle/service/es/es.cpp b/src/core/hle/service/es/es.cpp
index 446f46b3c..9eaae4c4b 100644
--- a/src/core/hle/service/es/es.cpp
+++ b/src/core/hle/service/es/es.cpp
@@ -122,20 +122,18 @@ private:
}
void ImportTicket(HLERequestContext& ctx) {
- const auto ticket = ctx.ReadBuffer();
+ const auto raw_ticket = ctx.ReadBuffer();
[[maybe_unused]] const auto cert = ctx.ReadBuffer(1);
- if (ticket.size() < sizeof(Core::Crypto::Ticket)) {
+ if (raw_ticket.size() < sizeof(Core::Crypto::Ticket)) {
LOG_ERROR(Service_ETicket, "The input buffer is not large enough!");
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ERROR_INVALID_ARGUMENT);
return;
}
- Core::Crypto::Ticket raw{};
- std::memcpy(&raw, ticket.data(), sizeof(Core::Crypto::Ticket));
-
- if (!keys.AddTicketPersonalized(raw)) {
+ Core::Crypto::Ticket ticket = Core::Crypto::Ticket::Read(raw_ticket);
+ if (!keys.AddTicket(ticket)) {
LOG_ERROR(Service_ETicket, "The ticket could not be imported!");
IPC::ResponseBuilder rb{ctx, 2};
rb.Push(ERROR_INVALID_ARGUMENT);
diff --git a/src/core/hle/service/mii/mii_manager.cpp b/src/core/hle/service/mii/mii_manager.cpp
index 46125d473..6b966f20d 100644
--- a/src/core/hle/service/mii/mii_manager.cpp
+++ b/src/core/hle/service/mii/mii_manager.cpp
@@ -21,7 +21,7 @@ constexpr Result ERROR_CANNOT_FIND_ENTRY{ErrorModule::Mii, 4};
constexpr std::size_t BaseMiiCount{2};
constexpr std::size_t DefaultMiiCount{RawData::DefaultMii.size()};
-constexpr MiiStoreData::Name DefaultMiiName{u'y', u'u', u'z', u'u'};
+constexpr MiiStoreData::Name DefaultMiiName{u'n', u'o', u' ', u'n', u'a', u'm', u'e'};
constexpr std::array<u8, 8> HairColorLookup{8, 1, 2, 3, 4, 5, 6, 7};
constexpr std::array<u8, 6> EyeColorLookup{8, 9, 10, 11, 12, 13};
constexpr std::array<u8, 5> MouthColorLookup{19, 20, 21, 22, 23};
diff --git a/src/core/hle/service/mii/raw_data.cpp b/src/core/hle/service/mii/raw_data.cpp
index 1442280c8..80369cdb0 100644
--- a/src/core/hle/service/mii/raw_data.cpp
+++ b/src/core/hle/service/mii/raw_data.cpp
@@ -5,109 +5,7 @@
namespace Service::Mii::RawData {
-const std::array<Service::Mii::DefaultMii, 8> DefaultMii{
- Service::Mii::DefaultMii{
- .face_type = 0,
- .face_color = 0,
- .face_wrinkle = 0,
- .face_makeup = 0,
- .hair_type = 33,
- .hair_color = 1,
- .hair_flip = 0,
- .eye_type = 2,
- .eye_color = 0,
- .eye_scale = 4,
- .eye_aspect = 3,
- .eye_rotate = 4,
- .eye_x = 2,
- .eye_y = 12,
- .eyebrow_type = 6,
- .eyebrow_color = 1,
- .eyebrow_scale = 4,
- .eyebrow_aspect = 3,
- .eyebrow_rotate = 6,
- .eyebrow_x = 2,
- .eyebrow_y = 10,
- .nose_type = 1,
- .nose_scale = 4,
- .nose_y = 9,
- .mouth_type = 23,
- .mouth_color = 0,
- .mouth_scale = 4,
- .mouth_aspect = 3,
- .mouth_y = 13,
- .mustache_type = 0,
- .beard_type = 0,
- .beard_color = 0,
- .mustache_scale = 4,
- .mustache_y = 10,
- .glasses_type = 0,
- .glasses_color = 0,
- .glasses_scale = 4,
- .glasses_y = 10,
- .mole_type = 0,
- .mole_scale = 4,
- .mole_x = 2,
- .mole_y = 20,
- .height = 64,
- .weight = 64,
- .gender = Gender::Male,
- .favorite_color = 0,
- .region = 0,
- .font_region = FontRegion::Standard,
- .type = 0,
- },
- Service::Mii::DefaultMii{
- .face_type = 0,
- .face_color = 0,
- .face_wrinkle = 0,
- .face_makeup = 0,
- .hair_type = 12,
- .hair_color = 1,
- .hair_flip = 0,
- .eye_type = 4,
- .eye_color = 0,
- .eye_scale = 4,
- .eye_aspect = 3,
- .eye_rotate = 3,
- .eye_x = 2,
- .eye_y = 12,
- .eyebrow_type = 0,
- .eyebrow_color = 1,
- .eyebrow_scale = 4,
- .eyebrow_aspect = 3,
- .eyebrow_rotate = 6,
- .eyebrow_x = 2,
- .eyebrow_y = 10,
- .nose_type = 1,
- .nose_scale = 4,
- .nose_y = 9,
- .mouth_type = 23,
- .mouth_color = 0,
- .mouth_scale = 4,
- .mouth_aspect = 3,
- .mouth_y = 13,
- .mustache_type = 0,
- .beard_type = 0,
- .beard_color = 0,
- .mustache_scale = 4,
- .mustache_y = 10,
- .glasses_type = 0,
- .glasses_color = 0,
- .glasses_scale = 4,
- .glasses_y = 10,
- .mole_type = 0,
- .mole_scale = 4,
- .mole_x = 2,
- .mole_y = 20,
- .height = 64,
- .weight = 64,
- .gender = Gender::Female,
- .favorite_color = 0,
- .region = 0,
- .font_region = FontRegion::Standard,
- .type = 0,
- },
+const std::array<Service::Mii::DefaultMii, 6> DefaultMii{
Service::Mii::DefaultMii{
.face_type = 0,
.face_color = 4,
diff --git a/src/core/hle/service/mii/raw_data.h b/src/core/hle/service/mii/raw_data.h
index c2bec68d4..5b81b013b 100644
--- a/src/core/hle/service/mii/raw_data.h
+++ b/src/core/hle/service/mii/raw_data.h
@@ -9,7 +9,7 @@
namespace Service::Mii::RawData {
-extern const std::array<Service::Mii::DefaultMii, 8> DefaultMii;
+extern const std::array<Service::Mii::DefaultMii, 6> DefaultMii;
extern const std::array<Service::Mii::RandomMiiData4, 18> RandomMiiFaceline;
extern const std::array<Service::Mii::RandomMiiData3, 6> RandomMiiFacelineColor;
extern const std::array<Service::Mii::RandomMiiData4, 18> RandomMiiFacelineWrinkle;