From 860276f2ee433df4e87c5266e8e25daeffa40f08 Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Tue, 7 Apr 2026 15:35:15 +0600 Subject: [PATCH 1/2] Fixed remove config checking if it was already removed --- source/libublsettings-config.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/libublsettings-config.c b/source/libublsettings-config.c index 9436623..8dd7888 100644 --- a/source/libublsettings-config.c +++ b/source/libublsettings-config.c @@ -602,12 +602,12 @@ int yon_config_remove_by_key(char *key){ check_config{ dictionary *dict = yon_dictionary_get((dictionary**)&__yon__config__strings,key); if (dict){ - // if (!yon_dictionary_get(&__yon_config_ignored,dict->key)){ + if (!yon_char_is_empty(dict->data)){ yon_config_remove_ignore(dict->key); ((yon_config_parameter*)dict)->flag1=-1; dict->data=""; return 1; - // } else return 0; + } } } return 0; From b5e92f0ccb3bb66da827743ab51fc90168b66185 Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Tue, 7 Apr 2026 18:38:36 +0600 Subject: [PATCH 2/2] Fixed removing removed config parameters --- source/libublsettings-config.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/source/libublsettings-config.c b/source/libublsettings-config.c index 8dd7888..b4c14b7 100644 --- a/source/libublsettings-config.c +++ b/source/libublsettings-config.c @@ -619,10 +619,12 @@ int yon_config_remove_by_list(config_str keys, size_t size){ for (size_t i = 0;ikey); - ((yon_config_parameter*)dict)->flag1=-1; - dict->data=""; - result=1; + if (!yon_char_is_empty(dict->data)){ + yon_config_remove_ignore(dict->key); + ((yon_config_parameter*)dict)->flag1=-1; + dict->data=""; + result=1; + } } } } @@ -638,10 +640,12 @@ int yon_config_remove_by_args(char *key, ...){ while (!yon_char_is_empty(cur_key)){ dictionary *dict = yon_dictionary_get((dictionary**)&__yon__config__strings,cur_key); if (dict){ - yon_config_remove_ignore(dict->key); - ((yon_config_parameter*)dict)->flag1=-1; - dict->data=""; - result=1; + if (!yon_char_is_empty(dict->data)){ + yon_config_remove_ignore(dict->key); + ((yon_config_parameter*)dict)->flag1=-1; + dict->data=""; + result=1; + } } cur_key = va_arg(args,char*); }