fixed config update visual bug

pull/14/head
parent 410ff1228a
commit 3e0b14ebf0

@ -1271,35 +1271,7 @@ void on_main_delete(GtkWidget *self, main_window *widgets){
void on_config_update(GtkWidget *self, main_window *widgets){ void on_config_update(GtkWidget *self, main_window *widgets){
yon_config_load_register(main_config.load_mode==1?YON_CONFIG_LOCAL:YON_CONFIG_GLOBAL,"users","DEFAULTPASSWD DEFAULTROOTPASSWD DEFAULTUSER HASHPASSWD USERGROUPS ADDADM USERADD[*] USERSHADOW[*] GROUPADD[*]",NULL); yon_config_load_register(main_config.load_mode==1?YON_CONFIG_LOCAL:YON_CONFIG_GLOBAL,"users","DEFAULTPASSWD DEFAULTROOTPASSWD DEFAULTUSER HASHPASSWD USERGROUPS ADDADM USERADD[*] USERSHADOW[*] GROUPADD[*]",NULL);
GtkTreeIter iter; yon_interface_update(widgets);
int size;
config_str users = yon_config_get_all_by_key("USERADD",&size);
if (users&&users[0]){
for (int i=0;i<size;i++){
char *value = yon_char_new(users[i]);
char *login = yon_char_divide_search(value,"\"",-1);
free(yon_char_divide_search(login,"[",-1));
login = yon_char_divide_search(login,"]",-1);
if (value[strlen(value)-1]=='\"') value[strlen(value)-1]='\0';
int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->UsersList),&iter);
for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->UsersList),&iter)){
char *name;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->UsersList),&iter,2,&name,-1);
if (!strcmp(name,login)){
int parsed_size;
config_str parsed = yon_char_parse(value,&parsed_size,":");
gtk_list_store_set(widgets->UsersList,&iter,
1,parsed_size>1?parsed[1]:"",
3,parsed_size>0?parsed[0]:"",
4,parsed_size>2?parsed[2]:"",
5,parsed_size>3?parsed[3]:"",
6,parsed_size>4?parsed[4]:"",
7,parsed_size>5?!strcmp(parsed[5],"x")||!strcmp(parsed[5],"")?DEFAULT_USER_LABEL:SET_PASSWORD_LABEL:NO_PASSWORD_LABEL,
-1);
}
}
}
}
} }

Loading…
Cancel
Save