From 2d9e13327541290973df1792dd216442d03e4682 Mon Sep 17 00:00:00 2001 From: bunnei Date: Tue, 26 May 2020 18:37:34 -0400 Subject: [PATCH] android: native: Set game specific settings before initializing core. - Allows some other settings to be overridden. --- src/android/app/src/main/jni/native.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/android/app/src/main/jni/native.cpp b/src/android/app/src/main/jni/native.cpp index c00d141b8..7eeed404f 100644 --- a/src/android/app/src/main/jni/native.cpp +++ b/src/android/app/src/main/jni/native.cpp @@ -128,6 +128,14 @@ static Core::System::ResultStatus RunCitra(const std::string& filepath) { // Forces a config reload on game boot, if the user changed settings in the UI Config{}; + // Replace with game-specific settings + u64 program_id{}; + FileUtil::SetCurrentRomPath(filepath); + auto app_loader = Loader::GetLoader(filepath); + if (app_loader) { + app_loader->ReadProgramId(program_id); + GameSettings::LoadOverrides(program_id); + } Settings::Apply(); Camera::RegisterFactory("image", std::make_unique()); @@ -152,12 +160,6 @@ static Core::System::ResultStatus RunCitra(const std::string& filepath) { return load_result; } - // Replace with game-specific settings - u64 program_id{}; - system.GetAppLoader().ReadProgramId(program_id); - GameSettings::LoadOverrides(program_id); - Settings::Apply(); - auto& telemetry_session = Core::System::GetInstance().TelemetrySession(); telemetry_session.AddField(Telemetry::FieldType::App, "Frontend", "SDL");