ref: e82164336aaebb508aa82c136e353daa6b5c908b
parent: fa044685c437e97e846b59681abd1933b35a456e
author: Keith Peters <kp@bit-101.com>
date: Tue Jan 28 05:35:55 EST 2025
Allow user to specify alternate config file with --config flag.
--- a/src/config.c
+++ b/src/config.c
@@ -18,10 +18,14 @@
}
}
-config_params_s init_config() {+config_params_s init_config(char *filename) {config_params_s c;
- c.filename = "config.ini"; // default config file to load
+ if (filename == NULL) {+ c.filename = "config.ini"; // default config file to load
+ } else {+ c.filename = filename;
+ }
c.init_fullscreen = 0; // default fullscreen state at load
c.init_use_gpu = 1; // default to use hardware acceleration
--- a/src/main.c
+++ b/src/main.c
@@ -40,9 +40,15 @@
SDL_Log("Using preferred device %s.\n", preferred_device);}
+ char *config_filename = NULL;
+ if (argc == 3 && SDL_strcmp(argv[1], "--config") == 0) {+ config_filename = argv[2];
+ SDL_Log("Using config file %s.\n", config_filename);+ }
+
// Initialize the config to defaults read in the params from the
// configfile if present
- config_params_s conf = init_config();
+ config_params_s conf = init_config(config_filename);
// TODO: take cli parameter to override default configfile location
read_config(&conf);
--
⑨