Add instant log flush option (#209)

This commit is contained in:
PabloMK7
2024-07-21 12:36:00 +02:00
parent 60c29ede5e
commit efe2ee6a43
12 changed files with 45 additions and 3 deletions

View File

@@ -13,7 +13,8 @@ enum class BooleanSetting(
ASYNC_SHADERS("async_shader_compilation", Settings.SECTION_RENDERER, false),
PLUGIN_LOADER("plugin_loader", Settings.SECTION_SYSTEM, false),
ALLOW_PLUGIN_LOADER("allow_plugin_loader", Settings.SECTION_SYSTEM, true),
SWAP_SCREEN("swap_screen", Settings.SECTION_LAYOUT, false);
SWAP_SCREEN("swap_screen", Settings.SECTION_LAYOUT, false),
INSTANT_DEBUG_LOG("instant_debug_log", Settings.SECTION_DEBUG, false);
override var boolean: Boolean = defaultValue

View File

@@ -986,6 +986,15 @@ class SettingsFragmentPresenter(private val fragmentView: SettingsFragmentView)
IntSetting.DEBUG_RENDERER.defaultValue
)
)
add(
SwitchSetting(
BooleanSetting.INSTANT_DEBUG_LOG,
R.string.instant_debug_log,
R.string.instant_debug_log_desc,
BooleanSetting.INSTANT_DEBUG_LOG.key,
BooleanSetting.INSTANT_DEBUG_LOG.defaultValue
)
)
}
}

View File

@@ -262,6 +262,7 @@ void Config::ReadValues() {
ReadSetting("Debugging", Settings::values.renderer_debug);
ReadSetting("Debugging", Settings::values.use_gdbstub);
ReadSetting("Debugging", Settings::values.gdbstub_port);
ReadSetting("Debugging", Settings::values.instant_debug_log);
for (const auto& service_module : Service::service_module_map) {
bool use_lle = sdl2_config->GetBoolean("Debugging", "LLE\\" + service_module.name, false);

View File

@@ -357,6 +357,10 @@ renderer_debug =
use_gdbstub=false
gdbstub_port=24689
# Flush log output on every message
# Immediately commits the debug log to file. Use this if citra crashes and the log output is being cut.
instant_debug_log =
# To LLE a service module add "LLE\<module name>=true"
[WebService]

View File

@@ -703,5 +703,7 @@
<string name="miscellaneous">Miscellaneous</string>
<string name="use_artic_base_controller">Use Artic Controller when connected to Artic Base Server</string>
<string name="use_artic_base_controller_desc">Use the controls provided by Artic Base Server when connected to it instead of the configured input device.</string>
<string name="instant_debug_log">Flush log output on every message</string>
<string name="instant_debug_log_desc">Immediately commits the debug log to file. Use this if citra crashes and the log output is being cut.</string>
</resources>