Fixed the problem when indexed conversion crashes when there are no

palettes

-Yosh
This commit is contained in:
Manish Singh
1997-12-17 00:48:55 +00:00
parent e8736da4aa
commit a9d80407d6
4 changed files with 92 additions and 66 deletions

View File

@ -1,3 +1,8 @@
Tue Dec 16 16:55:04 PST 1997 Manish Singh <yosh@gimp.org>
* app/convert.c: no more crashes with indexed conversion and no
palettes
Tue Dec 16 12:32:30 1997 Scott Goehring <scott@poverty.bloomington.in.us>
* app/xcf.c (xcf_load_invoker): Shuji's xcf load close patch.

View File

@ -378,6 +378,8 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
gtk_widget_show (hbox);
menu = build_palette_menu(&default_palette);
if (menu) {
/* 'custom' palette from dialog */
hbox = gtk_hbox_new (FALSE, 1);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
@ -392,7 +394,6 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
palette_option_menu = gtk_option_menu_new();
menu = build_palette_menu(&default_palette);
gtk_option_menu_set_menu (GTK_OPTION_MENU(palette_option_menu), menu);
gtk_option_menu_set_history(GTK_OPTION_MENU(palette_option_menu),
default_palette);
@ -400,6 +401,7 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show(palette_option_menu);
gtk_widget_show (hbox);
}
}
/* 'mono palette' */
hbox = gtk_hbox_new (FALSE, 1);
@ -456,14 +458,19 @@ build_palette_menu(int *default_palette){
PaletteEntriesP entries;
int i;
menu = gtk_menu_new();
list = palette_entries_list;
if(!palette_entries_list) {
/* fprintf(stderr, "no palette_entries_list, building...\n");*/
palette_init_palettes();
}
list = palette_entries_list;
if (!list)
return NULL;
menu = gtk_menu_new();
for(i=0,list = palette_entries_list,*default_palette=-1;
list;
i++,list = next_item (list))

View File

@ -378,6 +378,8 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
gtk_widget_show (hbox);
menu = build_palette_menu(&default_palette);
if (menu) {
/* 'custom' palette from dialog */
hbox = gtk_hbox_new (FALSE, 1);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
@ -392,7 +394,6 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
palette_option_menu = gtk_option_menu_new();
menu = build_palette_menu(&default_palette);
gtk_option_menu_set_menu (GTK_OPTION_MENU(palette_option_menu), menu);
gtk_option_menu_set_history(GTK_OPTION_MENU(palette_option_menu),
default_palette);
@ -400,6 +401,7 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show(palette_option_menu);
gtk_widget_show (hbox);
}
}
/* 'mono palette' */
hbox = gtk_hbox_new (FALSE, 1);
@ -456,14 +458,19 @@ build_palette_menu(int *default_palette){
PaletteEntriesP entries;
int i;
menu = gtk_menu_new();
list = palette_entries_list;
if(!palette_entries_list) {
/* fprintf(stderr, "no palette_entries_list, building...\n");*/
palette_init_palettes();
}
list = palette_entries_list;
if (!list)
return NULL;
menu = gtk_menu_new();
for(i=0,list = palette_entries_list,*default_palette=-1;
list;
i++,list = next_item (list))

View File

@ -378,6 +378,8 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
gtk_widget_show (hbox);
menu = build_palette_menu(&default_palette);
if (menu) {
/* 'custom' palette from dialog */
hbox = gtk_hbox_new (FALSE, 1);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
@ -392,7 +394,6 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show (toggle);
palette_option_menu = gtk_option_menu_new();
menu = build_palette_menu(&default_palette);
gtk_option_menu_set_menu (GTK_OPTION_MENU(palette_option_menu), menu);
gtk_option_menu_set_history(GTK_OPTION_MENU(palette_option_menu),
default_palette);
@ -400,6 +401,7 @@ convert_to_indexed (void *gimage_ptr)
gtk_widget_show(palette_option_menu);
gtk_widget_show (hbox);
}
}
/* 'mono palette' */
hbox = gtk_hbox_new (FALSE, 1);
@ -456,14 +458,19 @@ build_palette_menu(int *default_palette){
PaletteEntriesP entries;
int i;
menu = gtk_menu_new();
list = palette_entries_list;
if(!palette_entries_list) {
/* fprintf(stderr, "no palette_entries_list, building...\n");*/
palette_init_palettes();
}
list = palette_entries_list;
if (!list)
return NULL;
menu = gtk_menu_new();
for(i=0,list = palette_entries_list,*default_palette=-1;
list;
i++,list = next_item (list))