diff options
-rw-r--r-- | src/fe-text/gui-printtext.c | 4 | ||||
-rw-r--r-- | src/fe-text/textbuffer-view.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/fe-text/gui-printtext.c b/src/fe-text/gui-printtext.c index 3bd1de36..affd2b9f 100644 --- a/src/fe-text/gui-printtext.c +++ b/src/fe-text/gui-printtext.c @@ -244,8 +244,8 @@ static void sig_gui_print_text(WINDOW_REC *window, void *fgcolor, if (window == NULL) { g_return_if_fail(next_xpos != -1); - attr |= fg > 0 ? fg : ATTR_RESETFG; - attr |= bg > 0 ? (bg << 4) : ATTR_RESETBG; + attr |= fg >= 0 ? fg : ATTR_RESETFG; + attr |= bg >= 0 ? (bg << 4) : ATTR_RESETBG; term_set_color(root_window, attr); term_move(root_window, next_xpos, next_ypos); diff --git a/src/fe-text/textbuffer-view.c b/src/fe-text/textbuffer-view.c index a5d7f2ed..d98fc85c 100644 --- a/src/fe-text/textbuffer-view.c +++ b/src/fe-text/textbuffer-view.c @@ -114,7 +114,7 @@ static void update_cmd_color(unsigned char cmd, int *color) if ((cmd & LINE_COLOR_DEFAULT) == 0) *color |= (cmd & 0x0f) << 4; else { - *color |= ATTR_RESETBG; + *color = (*color & FGATTR) | ATTR_RESETBG; if (cmd & LINE_COLOR_BLINK) *color |= ATTR_BLINK; } @@ -124,7 +124,7 @@ static void update_cmd_color(unsigned char cmd, int *color) if ((cmd & LINE_COLOR_DEFAULT) == 0) *color |= cmd & 0x0f; else { - *color |= ATTR_RESETFG; + *color = (*color & BGATTR) | ATTR_RESETFG; if (cmd & LINE_COLOR_BOLD) *color |= ATTR_BOLD; } |