Fixed Os cpmponents crash

pull/113/head
parent ffce932a1a
commit 529db522b3
No known key found for this signature in database
GPG Key ID: FF1D842BF4DDE92B

@ -152,10 +152,12 @@ void yon_os_row_setup(os_row *row, char *name, char *version,char *tags, char *d
free(description_full);
}
gboolean yon_os_component_insert(os_row *row){
main_window *widgets = g_object_get_data(G_OBJECT(row->row),"widgets");
gboolean yon_os_component_insert(struct row_data *row_input){
os_row *row = yon_os_row_new();
main_window *widgets = row_input->widgets;
gtk_list_box_insert(GTK_LIST_BOX(widgets->OSSoftwareListBox),row->row,-1);
yon_os_row_setup(row,row->name,row->version,row->tags,row->description);
yon_os_row_setup(row,row_input->name,row_input->version,row_input->tags,row_input->description);
return G_SOURCE_REMOVE;
}
@ -172,12 +174,12 @@ void *yon_os_components_setup(main_window *widgets){
yon_char_remove_last_symbol(base[i],'\n');
int parsed_size;
config_str parsed = yon_char_parse(base[i],&parsed_size,";");
os_row *row = yon_os_row_new();
struct row_data *row = malloc(sizeof(struct row_data));
row->version = parsed[1];
row->name = parsed[0];
row->tags = yon_char_replace(parsed[2]," ",", ");
row->description = parsed[3];
g_object_set_data(G_OBJECT(row->row),"widgets",widgets);
row->widgets=widgets;
g_idle_add((GSourceFunc)yon_os_component_insert,row);
}
g_idle_add((GSourceFunc)yon_spinner_switch_off,widgets->OSSpinner);

@ -962,6 +962,14 @@ typedef struct {
advanced_partition *partition_widgets;
} advanced_section;
struct row_data {
main_window *widgets;
char *version;
char *name;
char *tags;
char *description;
};
void config_init();
main_window *yon_main_window_complete();
@ -1164,7 +1172,7 @@ void set_locales_list(main_window *widgets);
void on_installer_language_changed(GtkWidget *self, main_window *widgets);
gboolean on_country_filter(GtkTreeModel *self, GtkTreeIter *iter, main_window *widgets);
int yon_char_parsed_compare(const void *a, const void *b);
gboolean yon_os_component_insert(os_row *row);
gboolean yon_os_component_insert(struct row_data *row_input);
void *yon_os_components_setup(main_window *widgets);
gboolean yon_spinner_switch_off(GtkSpinner *target);
void on_advanced_added(GtkWidget *, char *, main_window *);
@ -1188,4 +1196,5 @@ int yon_advanced_section_get_by_part(advanced_partition *part);
void yon_advanced_section_remove_by_name(char *part);
void on_advanced_virtual_device_changed(GtkWidget *, main_window *widgets);
int yon_advanced_section_append(advanced_section *section);
gboolean on_format_changed(GtkWidget *self, gboolean state, advanced_partition *part);
gboolean on_format_changed(GtkWidget *self, gboolean state, advanced_partition *part);
int yon_layouts_get();
Loading…
Cancel
Save