diff --git a/src/core/hle/service/set/system_settings_server.cpp b/src/core/hle/service/set/system_settings_server.cpp index 3118d6621..41a690ba7 100644 --- a/src/core/hle/service/set/system_settings_server.cpp +++ b/src/core/hle/service/set/system_settings_server.cpp @@ -939,7 +939,7 @@ Result ISystemSettingsServer::GetBatteryLot(Out out_battery_lot) { Result ISystemSettingsServer::GetSerialNumber(Out out_console_serial) { LOG_INFO(Service_SET, "called"); - *out_console_serial = {"YUZ10000000001"}; + *out_console_serial = SerialNumber{"CIT10000000001"}; R_SUCCEED(); } diff --git a/src/core/hle/service/set/system_settings_server.h b/src/core/hle/service/set/system_settings_server.h index 0e1e470a8..11ef2cc33 100644 --- a/src/core/hle/service/set/system_settings_server.h +++ b/src/core/hle/service/set/system_settings_server.h @@ -38,11 +38,16 @@ public: const std::string& category, const std::string& name); template - Result GetSettingsItemValueImpl(T& out_value, const std::string& category, - const std::string& name) { - u64 size{}; - R_RETURN(GetSettingsItemValueImpl(std::span{reinterpret_cast(&out_value), sizeof(T)}, - size, category, name)); + Result GetSettingsItemValueImpl(T& output_value, const std::string& category, + const std::string& name) { + const size_t value_size = sizeof(T); + std::vector raw_data(value_size); + u64 actual_size{}; + + R_TRY(GetSettingsItemValueImpl(raw_data, actual_size, category, name)); + std::memcpy(&output_value, raw_data.data(), actual_size); + + R_SUCCEED(); } public: