Просмотр исходного кода

Introduced default constructors to fix compile

Andrea V 2 лет назад
Родитель
Сommit
ebe9d3b0a2

+ 4 - 2
src/core/hle/service/cmif_types.h

@@ -12,8 +12,10 @@ namespace Service {
 
 
 // clang-format off
 // clang-format off
 template <typename T>
 template <typename T>
-struct AutoOut {
-    T raw;
+class AutoOut {
+    public:
+        T raw;
+        AutoOut() : raw() {}
 };
 };
 
 
 template <typename T>
 template <typename T>

+ 8 - 0
src/core/hle/service/set/settings_types.h

@@ -401,6 +401,10 @@ static_assert(sizeof(AccountNotificationSettings) == 0x18,
 /// This is nn::settings::factory::BatteryLot
 /// This is nn::settings::factory::BatteryLot
 struct BatteryLot {
 struct BatteryLot {
     std::array<char, 0x18> lot_number;
     std::array<char, 0x18> lot_number;
+    BatteryLot() = default;
+    BatteryLot(const char* str) {
+        std::copy(str, str + std::min(sizeof(lot_number), strlen(str)), lot_number.begin());
+    }
 };
 };
 static_assert(sizeof(BatteryLot) == 0x18, "BatteryLot is an invalid size");
 static_assert(sizeof(BatteryLot) == 0x18, "BatteryLot is an invalid size");
 
 
@@ -477,6 +481,10 @@ static_assert(sizeof(NotificationSettings) == 0x18, "NotificationSettings is an
 /// This is nn::settings::factory::SerialNumber
 /// This is nn::settings::factory::SerialNumber
 struct SerialNumber {
 struct SerialNumber {
     std::array<char, 0x18> serial_number;
     std::array<char, 0x18> serial_number;
+    SerialNumber() = default;
+    SerialNumber(const char* str) {
+        std::copy(str, str + std::min(sizeof(serial_number), strlen(str)), serial_number.begin());
+    }
 };
 };
 static_assert(sizeof(SerialNumber) == 0x18, "SerialNumber is an invalid size");
 static_assert(sizeof(SerialNumber) == 0x18, "SerialNumber is an invalid size");
 
 

+ 2 - 2
src/core/hle/service/set/system_settings_server.cpp

@@ -932,14 +932,14 @@ Result ISystemSettingsServer::SetPrimaryAlbumStorage(PrimaryAlbumStorage primary
 Result ISystemSettingsServer::GetBatteryLot(Out<BatteryLot> out_battery_lot) {
 Result ISystemSettingsServer::GetBatteryLot(Out<BatteryLot> out_battery_lot) {
     LOG_INFO(Service_SET, "called");
     LOG_INFO(Service_SET, "called");
 
 
-    *out_battery_lot = {"YUZU0EMULATOR14022024"};
+    *out_battery_lot = BatteryLot("YUZU0EMULATOR14022024");
     R_SUCCEED();
     R_SUCCEED();
 }
 }
 
 
 Result ISystemSettingsServer::GetSerialNumber(Out<SerialNumber> out_console_serial) {
 Result ISystemSettingsServer::GetSerialNumber(Out<SerialNumber> out_console_serial) {
     LOG_INFO(Service_SET, "called");
     LOG_INFO(Service_SET, "called");
 
 
-    *out_console_serial = {"YUZ10000000001"};
+    *out_console_serial = SerialNumber("YUZ10000000001");
     R_SUCCEED();
     R_SUCCEED();
 }
 }