Fixed loading modules, installed from [modules] for other package/module installation window

pull/357/head
parent eb4af89138
commit 90f4b44a35

@ -453,12 +453,24 @@ gboolean yon_software_insert(struct row_data *row_input){
char *modules_prm = config(modules_parameter);
char *modules_param = NULL;
if (modules_prm&&!strcmp(modules_prm,"auto")){
int final_size;
int final_size = 0;
config_str final = NULL;
for (int i=0;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
yon_char_parsed_free(parsed,parsed_size);
}
modules_param = yon_char_parsed_to_string(final,final_size,",");
} else if (!yon_char_is_empty(modules_prm)){
int final_size = 0;
config_str final = NULL;
for (int i=0;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
if (yon_char_check_element(modules_prm,parsed[0],",")){
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
}
yon_char_parsed_free(parsed,parsed_size);
}
modules_param = yon_char_parsed_to_string(final,final_size,",");
@ -583,6 +595,18 @@ void yon_pacman_init(main_window *widgets){
yon_char_parsed_free(parsed,parsed_size);
}
modules_packages = yon_char_parsed_to_string(final,final_size,",");
} else if (!yon_char_is_empty(modules_packages)){
int final_size = 0;
config_str final = NULL;
for (int i=0;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
if (yon_char_check_element(modules_packages,parsed[0],",")){
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
}
yon_char_parsed_free(parsed,parsed_size);
}
modules_packages = yon_char_parsed_to_string(final,final_size,",");
}
parsed = yon_char_parse(modules_packages,&size,",");
for (int i=1;i<size;i++){

@ -89,6 +89,18 @@ void yon_packages_tab_init(main_window *widgets){
yon_char_parsed_free(parsed,parsed_size);
}
modules = yon_char_parsed_to_string(final,final_size,",");
} else if (!yon_char_is_empty(modules)){
int final_size = 0;
config_str final = NULL;
for (int i=0;i<main_config.modules_size;i++){
int parsed_size=0;
config_str parsed = yon_char_parse(main_config.modules[i],&parsed_size,";");
if (yon_char_check_element(modules,parsed[0],",")){
yon_char_parsed_add_or_create_if_exists(final,&final_size,parsed[1]);
}
yon_char_parsed_free(parsed,parsed_size);
}
modules = yon_char_parsed_to_string(final,final_size,",");
}
int size;
char *config_packages = config(packages_parameter);

Loading…
Cancel
Save