Fixed service duplicating

pull/93/head
parent f5db2366c7
commit ef1241feb4

@ -1481,6 +1481,16 @@ void* yon_interface_update(main_window *widgets){
int names_size;
config_str names_parsed = yon_char_parse(parsed[0],&names_size," ");
for (int j=0;j<names_size;j++){
int found=0;
for_iter(widgets->SystemList,&iter){
char *target;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->SystemList),&iter,5,&target,-1);
if (!strcmp(target,names_parsed[j])){
found = 1;
break;
}
}
if (!found) {
int enabled = !strcmp(parsed[5],"enabled");
int loaded = !strcmp(parsed[1],"loaded");
int active = !strcmp(parsed[2],"active");
@ -1488,6 +1498,7 @@ void* yon_interface_update(main_window *widgets){
gtk_list_store_append(widgets->SystemList,&iter);
gtk_list_store_set(widgets->SystemList,&iter,3,enabled,4,active,5,names_parsed[j],6,parsed[4],7,type,8,active,9,loaded,11,_(parsed[3]),13,parsed[3],-1);
}
}
yon_char_parsed_free(names_parsed,names_size);
}
@ -1538,6 +1549,16 @@ void* yon_interface_update(main_window *widgets){
int names_size;
config_str names_parsed = yon_char_parse(parsed[0],&names_size," ");
for (int j=0;j<names_size;j++){
int found=0;
for_iter(widgets->UserList,&iter){
char *target;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->UserList),&iter,5,&target,-1);
if (!strcmp(target,names_parsed[j])){
found = 1;
break;
}
}
if (found) {
int enabled = !strcmp(parsed[5],"enabled");
int loaded = !strcmp(parsed[1],"loaded");
int active = !strcmp(parsed[2],"active");
@ -1545,6 +1566,7 @@ void* yon_interface_update(main_window *widgets){
gtk_list_store_append(widgets->UserList,&iter);
gtk_list_store_set(widgets->UserList,&iter,3,enabled,4,active,5,names_parsed[j],6,parsed[4],7,type,8,active,9,loaded,11,_(parsed[3]),13,parsed[3],-1);
}
}
yon_char_parsed_free(names_parsed,names_size);
}

Loading…
Cancel
Save