From 28ff0dbbd5fb8016d19230c0538ab8ece039c545 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Thu, 20 Feb 2025 16:08:08 +0600 Subject: [PATCH] Test fix for paths --- source/ubl-settings-update.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/source/ubl-settings-update.c b/source/ubl-settings-update.c index fa1d3d1..dc3b993 100644 --- a/source/ubl-settings-update.c +++ b/source/ubl-settings-update.c @@ -462,8 +462,18 @@ void yon_interface_update(main_window *widgets){ path = yon_char_divide_search(key,":",-1); } int repos_size; - config_str repos = yon_char_parse(key,&repos_size,","); - + config_str repos = NULL; + if (!yon_char_is_empty(key)){ + repos = yon_char_parse(key,&repos_size,","); + } else { + repos = yon_file_list_dirs(path,&repos_size); + int pool_pos = yon_char_parsed_check_exist(repos,repos_size,"pool"); + if (pool_pos!=-1){ + repos = yon_char_parsed_rip(repos,&repos_size,pool_pos); + } + yon_char_parsed_prepend_strings(repos,repos_size,yon_char_append(path,"/")); + } + if (repos_size){ char *repos_paths = yon_char_parsed_to_string(repos,repos_size,","); char *full_path = yon_char_unite(path,!yon_char_is_empty(repos_paths)?":":"",!yon_char_is_empty(repos_paths)?repos_paths:"",NULL); if (!yon_char_is_empty(repos_paths)) free(repos_paths); @@ -482,9 +492,12 @@ void yon_interface_update(main_window *widgets){ } repos_paths = yon_char_parsed_to_string(repos,repos_size,"\n"); - gtk_list_store_set(widgets->WebPublicationList,&iter,1,path,2,repos_paths,8,full_path,-1); + gtk_list_store_set(widgets->WebPublicationList,&iter,2,repos_paths,8,full_path,-1); free(repos_paths); free(full_path); + } + + gtk_list_store_set(widgets->WebPublicationList,&iter,1,path,-1); int cur_size; config_str parsed = yon_char_parse(cur,&cur_size,":"); if (cur_size){