commit ac726f08fa15256abb619533affc6bda4131ee6c
parent 30986db7088b118edf42f137bf7cb8a584a2e4bd
Author: Benno Schulenberg <bensberg@telfort.nl>
Date: Fri, 7 Jul 2017 11:48:26 +0200
startup: don't try parsing color names that were not specified
Dereferencing a NULL pointer is never a good idea.
This fixes https://savannah.gnu.org/bugs/?51405.
Reported-by: David Lawrence Ramsey <pooka109@gmail.com>
Diffstat:
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/color.c b/src/color.c
@@ -54,8 +54,9 @@ void set_colorpairs(void)
for (i = 0; i < NUMBER_OF_ELEMENTS; i++) {
bool bright = FALSE;
- if (parse_color_names(specified_color_combo[i],
- &foreground, &background, &bright)) {
+ if (specified_color_combo[i] != NULL &&
+ parse_color_names(specified_color_combo[i],
+ &foreground, &background, &bright)) {
if (foreground == -1 && !using_defaults)
foreground = COLOR_WHITE;
if (background == -1 && !using_defaults)
@@ -63,8 +64,7 @@ void set_colorpairs(void)
init_pair(i + 1, foreground, background);
interface_color_pair[i] =
COLOR_PAIR(i + 1) | (bright ? A_BOLD : A_NORMAL);
- }
- else {
+ } else {
if (i != FUNCTION_TAG)
interface_color_pair[i] = hilite_attribute;
else