From 108587aa57f88b55c986a557748df88a5d4be68c Mon Sep 17 00:00:00 2001 From: Ivan Dmitrievich Yartsev Date: Wed, 8 Apr 2026 18:36:19 +0600 Subject: [PATCH] Fixed Saving of services and application without actions --- source/ubinstall-gtk-packages.c | 5 ++--- source/ubinstall-gtk-startup-apps.c | 3 +++ source/ubinstall-gtk-startup-services.c | 5 ++++- ubinstall-gtk-os-row.glade | 2 +- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/source/ubinstall-gtk-packages.c b/source/ubinstall-gtk-packages.c index d6e3a1f..58fedb0 100644 --- a/source/ubinstall-gtk-packages.c +++ b/source/ubinstall-gtk-packages.c @@ -4,7 +4,7 @@ int yon_packages_tab_save(main_window *widgets){ GtkTreeIter parentiter, subiter,packiter; if (yon_char_is_empty(config(packages_parameter))){ yon_config_register(packages_parameter,packages_parameter_command,NULL); - yon_config_set_status(packages_parameter,-1); + yon_config_set_status(packages_parameter,0); } for_iter(widgets->PackagesList,&parentiter){ for (int valid2 = gtk_tree_model_iter_children(GTK_TREE_MODEL(widgets->PackagesList),&subiter,&parentiter);valid2;valid2 = gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->PackagesList),&subiter)){ @@ -12,8 +12,7 @@ int yon_packages_tab_save(main_window *widgets){ int sensitive=0; char *package; gtk_tree_model_get(GTK_TREE_MODEL(widgets->PackagesList),&subiter,0,&status,1,&package,3,&selectable,4,&sensitive,-1); - if (selectable&&status){ - + if (selectable&&status&&sensitive){ yon_config_append_elements(packages_parameter,package,","); }else if (selectable&&!status){ yon_config_remove_elements_all(packages_parameter,package,","); diff --git a/source/ubinstall-gtk-startup-apps.c b/source/ubinstall-gtk-startup-apps.c index 4150a6f..3d60bd1 100644 --- a/source/ubinstall-gtk-startup-apps.c +++ b/source/ubinstall-gtk-startup-apps.c @@ -210,7 +210,10 @@ int yon_startup_app_save(main_window *widgets){ } if (size){ char *final = yon_char_parsed_to_string(modules,size,","); + char *config_parameter = config(AUTOEXEC_parameter); + if (!yon_char_check_elements(config_parameter,final,",")||!yon_char_check_elements(final,config_parameter,",")){ yon_config_register(AUTOEXEC_parameter,AUTOEXEC_parameter_command,final); + } yon_char_parsed_free(modules,size); } else { yon_config_remove_by_key(AUTOEXEC_parameter); diff --git a/source/ubinstall-gtk-startup-services.c b/source/ubinstall-gtk-startup-services.c index b8d2bad..418adae 100644 --- a/source/ubinstall-gtk-startup-services.c +++ b/source/ubinstall-gtk-startup-services.c @@ -214,7 +214,10 @@ int yon_startup_save(main_window *widgets){ } if (size){ char *final = yon_char_parsed_to_string(modules,size,","); - yon_config_register(SERVICES_ENABLE_parameter,SERVICES_ENABLE_parameter_command,final); + char *config_parameter = config(SERVICES_ENABLE_parameter); + if (!yon_char_check_elements(config_parameter,final,",")||!yon_char_check_elements(final,config_parameter,",")){ + yon_config_register(SERVICES_ENABLE_parameter,SERVICES_ENABLE_parameter_command,final); + } yon_char_parsed_free(modules,size); } else { yon_config_remove_by_key(SERVICES_ENABLE_parameter); diff --git a/ubinstall-gtk-os-row.glade b/ubinstall-gtk-os-row.glade index f79a5cd..21dd622 100644 --- a/ubinstall-gtk-os-row.glade +++ b/ubinstall-gtk-os-row.glade @@ -309,7 +309,7 @@ start start 20 - 3 + 6 Name 0 False