@@ -130,6 +130,7 @@ TomlSchema::TypePtr Configuration::section_schema = TomlSchema::table(
130130 TomlSchema::alternatives ({TomlSchema::integer (), TomlSchema::constant (" all" )}, " integer or 'all'" )},
131131 {" status-db-keep-runs" ,
132132 TomlSchema::alternatives ({TomlSchema::integer (), TomlSchema::constant (" all" )}, " integer or 'all'" )},
133+ {" suffix-only-duplicates" , TomlSchema::boolean ()},
133134 {" unknown-directory" , TomlSchema::string ()},
134135 {" update-database" , TomlSchema::boolean ()},
135136 {" use-central-cache-directory" , TomlSchema::boolean ()},
@@ -304,6 +305,7 @@ void Configuration::reset() {
304305 }
305306 status_db = StatusDB::default_name ();
306307 status_db_keep_runs = 2 ;
308+ suffix_only_duplicates = false ;
307309 unknown_directory = " unknown" ;
308310 update_database = false ;
309311 use_central_cache_directory = false ;
@@ -654,6 +656,7 @@ void Configuration::merge_config_table(const toml::table* table_pointer) {
654656 set_bool (table, " roms-zipped" , roms_zipped);
655657 set_string (table, " saved-directory" , saved_directory);
656658 set_string (table, " status-db" , status_db);
659+ set_bool (table, " suffix-only-duplicates" , suffix_only_duplicates);
657660 set_integer_or_all (table, " status-db-keep-days" , status_db_keep_days);
658661 set_integer_or_all (table, " status-db-keep-runs" , status_db_keep_runs);
659662 set_string (table, " unknown-directory" , unknown_directory);
@@ -823,7 +826,7 @@ bool Configuration::dat_create_fixdat(const std::string& dat) {
823826bool Configuration::dat_suffix_only_duplicates (const std::string& dat) {
824827 auto it = dat_options.find (dat);
825828 if (it == dat_options.end () || !it->second .suffix_only_duplicates .has_value ()) {
826- return false ;
829+ return suffix_only_duplicates ;
827830 }
828831 return *it->second .suffix_only_duplicates ;
829832}
0 commit comments