shithub: psxe

Download patch

ref: 62b110bc3b91bad4dfdc1c280440a02fc2cbd7f7
parent: 0be19c0dfa3a9b752905f8002b2018aabfe810cd
author: allkern <lisandroaalarcon@gmail.com>
date: Mon Jun 19 09:29:43 EDT 2023

Load defaults when unable to create settings file

--- a/frontend/config.c
+++ b/frontend/config.c
@@ -100,7 +100,7 @@
     cfg->version = 0;
 }
 
-void psxe_cfg_load(psxe_config_t* cfg, int argc, const char* argv) {
+void psxe_cfg_load(psxe_config_t* cfg, int argc, const char* argv[]) {
     log_set_level(LOG_INFO);
 
     int use_args = 0;
@@ -170,6 +170,14 @@
 
         if (!settings) {
             settings = fopen("settings.toml", "w+b");
+
+            if (!settings) {
+                log_error("Couldn't create settings file, loading default settings");
+
+                psxe_cfg_load_defaults(cfg);
+
+                return;
+            }
 
             fwrite(g_default_settings, 1, sizeof(g_default_settings) - 1, settings);
 
--- a/frontend/main.c
+++ b/frontend/main.c
@@ -29,7 +29,6 @@
     psxe_cfg_init(cfg);
     psxe_cfg_load_defaults(cfg);
     psxe_cfg_load(cfg, argc, argv);
-    
 
     log_set_level(LOG_FATAL);
 
--