From 365cc8d50b39d8b4d32f0ba52b14403f02e9e7c5 Mon Sep 17 00:00:00 2001 From: Yves Rizoud Date: Fri, 30 Aug 2013 00:05:47 +0000 Subject: [PATCH] Fix issue 539 : Freeze when palette is 'vertical' and number of rows is not a power of two git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2064 416bcca6-2ee7-4201-b75f-2eb2f807beb1 --- src/buttons.c | 7 ++++++- src/windows.c | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/buttons.c b/src/buttons.c index f9755195..5438c79d 100644 --- a/src/buttons.c +++ b/src/buttons.c @@ -333,7 +333,12 @@ void Button_Pal_right_fast(void) if ((int)First_color_in_palette+(cells_y)*cells_x*2<256) First_color_in_palette+=cells_x*cells_y; else - First_color_in_palette=255/cells_y*cells_y-(cells_x-1)*cells_y; + { + if (Config.Palette_vertical) + First_color_in_palette=255/cells_x*cells_x-(cells_y-1)*cells_x; + else + First_color_in_palette=255/cells_y*cells_y-(cells_x-1)*cells_y; + } Display_menu_palette(); } Unselect_button(BUTTON_PAL_RIGHT); diff --git a/src/windows.c b/src/windows.c index cb6db61b..15ef04aa 100644 --- a/src/windows.c +++ b/src/windows.c @@ -422,8 +422,13 @@ void Change_palette_cells() // la fin, il faut reculer First_color_in_palette pour montrer plein // de couleurs. if ((int)First_color_in_palette+(Menu_cells_Y)*Menu_cells_X*2>=256) - First_color_in_palette=255/Menu_cells_Y*Menu_cells_Y-(Menu_cells_X-1)*Menu_cells_Y; - + { + if (Config.Palette_vertical) + First_color_in_palette=255/Menu_cells_X*Menu_cells_X-(Menu_cells_Y-1)*Menu_cells_X; + else + First_color_in_palette=255/Menu_cells_Y*Menu_cells_Y-(Menu_cells_X-1)*Menu_cells_Y; + } + // Mise à jour de la taille du bouton dans le menu. C'est pour pas que // la bordure noire soit active. Buttons_Pool[BUTTON_CHOOSE_COL].Width=(Menu_palette_cell_width*Menu_cells_X)-1;