From 17d4b375e6804961e2f89a6c5d6416095c55a790 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Mon, 11 Mar 2024 17:45:41 +0600 Subject: [PATCH] Added functions for saving --- source/libublsettings.c | 34 ++++++++++++++++++++++++++++++++-- source/libublsettings.h | 5 +++++ 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/source/libublsettings.c b/source/libublsettings.c index c70cffa..aa8c386 100644 --- a/source/libublsettings.c +++ b/source/libublsettings.c @@ -1580,6 +1580,7 @@ config_str yon_config_get_save_parameters_by_list(int *size, config_str paramete current_size = &removed_size; break; case 1: + case 0: action = "set"; current = &updated; current_size = &updated_size; @@ -1715,10 +1716,17 @@ char *yon_config_save_simple(YON_CONFIG_TYPE target, char *path){ } char *yon_config_parameter_prepare_command(char *command, char *path, char *section, char *parameter){ - if (path||parameter){ + if (!yon_char_is_empty(command)){ int size=0; config_str parsed = yon_char_parse(command,&size," "); - if (path){ + if (path&&!strcmp(path,"")){ + if (size>4&&!strcmp(parsed[1],"--source")){ + free(parsed[1]); + parsed[1]=yon_char_new(""); + free(parsed[2]); + parsed[2]=yon_char_new(""); + } + } else if (path){ if (size>4&&!strcmp(parsed[1],"--source")){ free(parsed[2]); parsed[2]=yon_char_new(path); @@ -1740,6 +1748,7 @@ char *yon_config_parameter_prepare_command(char *command, char *path, char *sect yon_char_parsed_free(parsed,size); return final; } + return NULL; } int yon_config_save_registered(char *path){ @@ -1876,6 +1885,27 @@ char *yon_config_get_parameter(config_str parameters, int size, char *param) return NULL; } +char *yon_file_path_proceed_spaces(char *path){ + int size; + config_str parsed = yon_char_parse(path,&size,"/"); + for (int i=0;i