From 5b7ad6717a6e24730f6d54564245d581b77c8f55 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 19 Feb 2024 17:32:12 +0600 Subject: [PATCH] Fixed folder searching --- source/ubl-settings-usergroups.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-usergroups.c b/source/ubl-settings-usergroups.c index dd2780d..4bb962f 100644 --- a/source/ubl-settings-usergroups.c +++ b/source/ubl-settings-usergroups.c @@ -128,6 +128,14 @@ void yon_interface_update(main_window *widgets){ } } + if (main_config.groups_size>0){ + yon_char_parsed_free(main_config.groups,main_config.groups_size); + main_config.groups = yon_file_open(groups_path,&main_config.groups_size); + } + if (main_config.users_size>0){ + yon_char_parsed_free(main_config.users,main_config.users_size); + main_config.users = yon_file_open(users_path,&main_config.users_size); + } } void on_config_local_load(GtkWidget *self, main_window *widgets){ @@ -291,7 +299,7 @@ void on_config_global_save(){ } -void on_config_local_save(){ +void on_config_local_save(GtkWidget *self, main_window *widgets){ int size; config_str keys = yon_config_get_all_by_key("USERADD[",&size); int passw_size; @@ -304,7 +312,11 @@ void on_config_local_save(){ if (parsed_size>5&&!yon_char_is_empty(parsed[5])){ yon_char_parsed_add_or_create_if_exists(passwords,&passw_size,yon_char_new(parsed[5])); parsed = yon_char_parsed_rip(parsed,&parsed_size,5); - yon_config_set(key,yon_char_parsed_to_string(parsed,parsed_size,":")); + char *final_string = yon_char_parsed_to_string(parsed,parsed_size,":"); + char *temp = yon_char_append(final_string,":"); + free(final_string); + final_string=temp; + yon_config_set(key,final_string); } free(key); free(value); @@ -318,6 +330,7 @@ void on_config_local_save(){ yon_config_parse_parameter(keys[i],&key,&value); yon_config_set(key,value); } + yon_interface_update(widgets); } void on_saving_settings_save(GtkWidget *self, yon_savasettings_window *window){ @@ -2116,6 +2129,7 @@ void config_init(){ main_config.lock_save_global=0; main_config.lock_save_local=0; main_config.groups_size=0; + main_config.users_size=0; main_config.load_mode=1; main_config.hash_default_id=-1; main_config.groups = yon_file_open(groups_path,&main_config.groups_size);