Fixed crash

pull/190/head
Ivan Dmitrievich Yartsev 11 months ago
parent eedd65a6d7
commit 29cbcddda7

@ -884,7 +884,7 @@ void on_groups_clicked(GtkWidget *, GtkEntry *output_target){
char *final_group_name=NULL;
if (digits==strlen(current_group)){
if (digits&&digits==strlen(current_group)){
for (int i=0;i<main_config.groups_size;i++){
int group_size=0;
config_str groups_parsed = yon_char_parse(main_config.groups[i],&group_size,":");
@ -901,7 +901,7 @@ void on_groups_clicked(GtkWidget *, GtkEntry *output_target){
for_iter(window->list,&iter){
char *group;
gtk_tree_model_get(GTK_TREE_MODEL(window->list),&iter,1,&group,-1);
if (!strcmp(group,final_group_name)){
if (!yon_char_is_empty(final_group_name)&& !strcmp(group,final_group_name)){
gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(window->GroupsTree)),&iter);
gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(window->GroupsTree),gtk_tree_model_get_path(GTK_TREE_MODEL(window->list),&iter),gtk_tree_view_get_column(GTK_TREE_VIEW(window->GroupsTree),1),0,0,0);
break;
@ -2802,6 +2802,19 @@ void on_user_sync_with_config(GtkWidget *,main_window *widgets){
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SystemTree)),&model,&iter)){
char *target;
gtk_tree_model_get(model,&iter,2,&target,-1);
dialog_confirmation_data data;
if (config(USERADD(target))){
data.action_text = SYSTEM_USER_SYNC_CONFIRMATION_LABEL(target);
data.data=NULL;
data.function=NULL;
} else {
data.action_text = SYSTEM_USER_ADD_CONFIRMATION_LABEL(target);
data.data=NULL;
data.function=NULL;
}
if (yon_confirmation_dialog_call(widgets->Window,&data)!=GTK_RESPONSE_ACCEPT){
return;
}
int size;
config_str passwd_users = yon_file_open(users_path,&size);
int active_usr = yon_char_parsed_strstr(passwd_users,size,target);
@ -2832,6 +2845,7 @@ void on_user_sync_with_config(GtkWidget *,main_window *widgets){
// config_str shadow = yon_file_open(shadow_path,&shadow_size);
}
}
yon_interface_update((main_window*)widgets);
break;
case 3:
break;

@ -51,6 +51,9 @@
#define UPDATE_LABEL _("Update users and groups")
#define SAVING_CONFIGURATION_LABEL _("Additional saving configuration")
#define SYSTEM_USER_ADD_CONFIRMATION_LABEL(target) yon_char_unite(_("This user doesn't exist in configuration. Are you sure want to add user")," ",target," ", _("to configuration?"),NULL)
#define SYSTEM_USER_SYNC_CONFIRMATION_LABEL(target) yon_char_unite(_("This user exists in configuration. Are you sure want to update user")," ",target," ", _("data at configuration?"),NULL)
//ubl-settings-usergroups-additional-settings.glade
#define ADDITIONAL_SETTINGS_TITLE_LABEL _("Additional settings")

Loading…
Cancel
Save