diff --git a/source/ubinstall-gtk-advanced.c b/source/ubinstall-gtk-advanced.c index a490752..560750d 100644 --- a/source/ubinstall-gtk-advanced.c +++ b/source/ubinstall-gtk-advanced.c @@ -42,8 +42,8 @@ void on_advanced_part_remove_part(GtkWidget *self, main_window *widgets){ for_iter (model, &iter){ char *target; gtk_tree_model_get(model,&iter,0,&target,-1); - if (data->partition&&!strcmp(data->partition,target)){ gtk_widget_destroy(part->MainBox); + if (data->partition&&!strcmp(data->partition,target)){ gtk_list_store_set(widgets->PartitionsList,&iter,7,0,-1); free(part); } @@ -180,6 +180,18 @@ void yon_advanced_part_save_part(advanced_part_data *data){ if (!config(part_crypt_parameter)) yon_config_register(part_crypt_parameter,part_crypt_parameter_command,NULL); if (!config(part_format_parameter)) yon_config_register(part_format_parameter,part_format_parameter_command,NULL); + if (!data){ + + yon_config_force_append_element(device_parameter,"",","); + yon_config_force_append_element(part_parameter,"",","); + yon_config_force_append_element(part_size_parameter,"",","); + yon_config_force_append_element(part_label_parameter,"",","); + yon_config_force_append_element(part_fs_type_parameter,"",","); + yon_config_force_append_element(part_fs_label_parameter,"",","); + yon_config_force_append_element(part_crypt_parameter,"",","); + yon_config_force_append_element(part_format_parameter,"",","); + return; + } yon_config_force_append_element(device_parameter,data->device,","); yon_config_force_append_element(part_parameter,data->partition,","); if (data->size>0){ @@ -679,12 +691,12 @@ void yon_advanced_init(main_window *widgets){ yon_char_parsed_free(vmf_file,size); g_signal_handlers_unblock_by_func(G_OBJECT(widgets->AdvancedVirtualDeviceCombo),G_CALLBACK(on_advanced_virtual_device_changed),widgets); - advanced_part_data *data1 = yon_advanced_get_config_data(0); - advanced_part_data *data2 = yon_advanced_get_config_data(1); - yon_advanced_part_select_for_data(data1,widgets); - yon_advanced_part_select_for_data(data2,widgets); - - + if (!strcmp(config(AUTOINSTALL_TYPE_INSTALL),"custom")){ + advanced_part_data *data1 = yon_advanced_get_config_data(0); + advanced_part_data *data2 = yon_advanced_get_config_data(1); + yon_advanced_part_select_for_data(data1,widgets); + yon_advanced_part_select_for_data(data2,widgets); + } } advanced_part_widgets *yon_advanced_part_create(advanced_part_data *part_data){