diff options
author | Sebastien Helleu <flashcode@flashtux.org> | 2006-01-07 23:44:19 +0000 |
---|---|---|
committer | Sebastien Helleu <flashcode@flashtux.org> | 2006-01-07 23:44:19 +0000 |
commit | 978efc0d4f050fa987da1d0f19eb462a21594250 (patch) | |
tree | ff3b25509a886515ba1936345bb22781278154b8 | |
parent | b409b42470cee9d5f3e218d3353abbc95f5fcf1e (diff) | |
download | weechat-978efc0d4f050fa987da1d0f19eb462a21594250.zip |
Secured some code with color management in messages
-rw-r--r-- | src/gui/curses/gui-display.c | 12 | ||||
-rw-r--r-- | weechat/src/gui/curses/gui-display.c | 12 |
2 files changed, 18 insertions, 6 deletions
diff --git a/src/gui/curses/gui-display.c b/src/gui/curses/gui-display.c index baa08a581..f9c5e9303 100644 --- a/src/gui/curses/gui-display.c +++ b/src/gui/curses/gui-display.c @@ -465,6 +465,9 @@ gui_color_get_pair (int num_color) { int fg, bg; + if ((num_color < 0) || (num_color > NUM_COLORS - 1)) + return WEECHAT_COLOR_WHITE; + fg = gui_color[num_color]->foreground; bg = gui_color[num_color]->background; @@ -486,9 +489,12 @@ gui_color_get_pair (int num_color) void gui_window_set_weechat_color (WINDOW *window, int num_color) { - wattroff (window, A_BOLD | A_UNDERLINE | A_REVERSE); - wattron (window, COLOR_PAIR(gui_color_get_pair (num_color)) | - gui_color[num_color]->attributes); + if ((num_color >= 0) && (num_color <= NUM_COLORS - 1)) + { + wattroff (window, A_BOLD | A_UNDERLINE | A_REVERSE); + wattron (window, COLOR_PAIR(gui_color_get_pair (num_color)) | + gui_color[num_color]->attributes); + } } /* diff --git a/weechat/src/gui/curses/gui-display.c b/weechat/src/gui/curses/gui-display.c index baa08a581..f9c5e9303 100644 --- a/weechat/src/gui/curses/gui-display.c +++ b/weechat/src/gui/curses/gui-display.c @@ -465,6 +465,9 @@ gui_color_get_pair (int num_color) { int fg, bg; + if ((num_color < 0) || (num_color > NUM_COLORS - 1)) + return WEECHAT_COLOR_WHITE; + fg = gui_color[num_color]->foreground; bg = gui_color[num_color]->background; @@ -486,9 +489,12 @@ gui_color_get_pair (int num_color) void gui_window_set_weechat_color (WINDOW *window, int num_color) { - wattroff (window, A_BOLD | A_UNDERLINE | A_REVERSE); - wattron (window, COLOR_PAIR(gui_color_get_pair (num_color)) | - gui_color[num_color]->attributes); + if ((num_color >= 0) && (num_color <= NUM_COLORS - 1)) + { + wattroff (window, A_BOLD | A_UNDERLINE | A_REVERSE); + wattron (window, COLOR_PAIR(gui_color_get_pair (num_color)) | + gui_color[num_color]->attributes); + } } /* |