summaryrefslogtreecommitdiff
path: root/src/core/loader
diff options
context:
space:
mode:
authorGravatar lat9nq2021-06-28 15:58:16 -0400
committerGravatar lat9nq2021-06-28 17:32:17 -0400
commitb91b76df4fe27d781bd95ddb89b78ff54df57029 (patch)
treeabd3de5c02b036ec936a70599e496ba1d45d7849 /src/core/loader
parentconfiguration: Defer to common/settings for per-game settings defaults (diff)
downloadyuzu-b91b76df4fe27d781bd95ddb89b78ff54df57029.tar.gz
yuzu-b91b76df4fe27d781bd95ddb89b78ff54df57029.tar.xz
yuzu-b91b76df4fe27d781bd95ddb89b78ff54df57029.zip
general: Make most settings a BasicSetting
Creates a new BasicSettings class in common/settings, and forces setting a default and label for each setting that uses it in common/settings. Moves defaults and labels from both frontends into common settings. Creates a helper function in each frontend to facillitate reading the settings now with the new default and label properties. Settings::Setting is also now a subclass of Settings::BasicSetting. Also adds documentation for both Setting and BasicSetting.
Diffstat (limited to 'src/core/loader')
-rw-r--r--src/core/loader/nro.cpp4
-rw-r--r--src/core/loader/nso.cpp4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/core/loader/nro.cpp b/src/core/loader/nro.cpp
index 618555202..951ea966e 100644
--- a/src/core/loader/nro.cpp
+++ b/src/core/loader/nro.cpp
@@ -155,8 +155,8 @@ static bool LoadNroImpl(Kernel::KProcess& process, const std::vector<u8>& data)
155 codeset.segments[i].size = PageAlignSize(nro_header.segments[i].size); 155 codeset.segments[i].size = PageAlignSize(nro_header.segments[i].size);
156 } 156 }
157 157
158 if (!Settings::values.program_args.empty()) { 158 if (!Settings::values.program_args.GetValue().empty()) {
159 const auto arg_data = Settings::values.program_args; 159 const auto arg_data = Settings::values.program_args.GetValue();
160 codeset.DataSegment().size += NSO_ARGUMENT_DATA_ALLOCATION_SIZE; 160 codeset.DataSegment().size += NSO_ARGUMENT_DATA_ALLOCATION_SIZE;
161 NSOArgumentHeader args_header{ 161 NSOArgumentHeader args_header{
162 NSO_ARGUMENT_DATA_ALLOCATION_SIZE, static_cast<u32_le>(arg_data.size()), {}}; 162 NSO_ARGUMENT_DATA_ALLOCATION_SIZE, static_cast<u32_le>(arg_data.size()), {}};
diff --git a/src/core/loader/nso.cpp b/src/core/loader/nso.cpp
index 0f5cfda68..4a2224c02 100644
--- a/src/core/loader/nso.cpp
+++ b/src/core/loader/nso.cpp
@@ -104,8 +104,8 @@ std::optional<VAddr> AppLoader_NSO::LoadModule(Kernel::KProcess& process, Core::
104 codeset.segments[i].size = nso_header.segments[i].size; 104 codeset.segments[i].size = nso_header.segments[i].size;
105 } 105 }
106 106
107 if (should_pass_arguments && !Settings::values.program_args.empty()) { 107 if (should_pass_arguments && !Settings::values.program_args.GetValue().empty()) {
108 const auto arg_data{Settings::values.program_args}; 108 const auto arg_data{Settings::values.program_args.GetValue()};
109 109
110 codeset.DataSegment().size += NSO_ARGUMENT_DATA_ALLOCATION_SIZE; 110 codeset.DataSegment().size += NSO_ARGUMENT_DATA_ALLOCATION_SIZE;
111 NSOArgumentHeader args_header{ 111 NSOArgumentHeader args_header{