diff options
author | Thomas Adam <thomas@xteddy.org> | 2012-12-08 20:29:37 +0000 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2012-12-08 20:29:37 +0000 |
commit | fb83914bd745996429374122f2289f2930170f71 (patch) | |
tree | 17e80c94f1605da8eebb6565244baee0cedb82d7 /screen-write.c | |
parent | d5de489dc4ae2e5eaa9e5dee86094afb43cc1387 (diff) | |
parent | 3fa4f691e32482b2d07d16be84b6e22657f9c7dd (diff) | |
download | rtmux-fb83914bd745996429374122f2289f2930170f71.tar.gz rtmux-fb83914bd745996429374122f2289f2930170f71.tar.bz2 rtmux-fb83914bd745996429374122f2289f2930170f71.zip |
Merge branch 'obsd-master'
Sync from OpenBSD.
Diffstat (limited to 'screen-write.c')
-rw-r--r-- | screen-write.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/screen-write.c b/screen-write.c index 66a62b3a..02051119 100644 --- a/screen-write.c +++ b/screen-write.c @@ -324,6 +324,9 @@ screen_write_parsestyle( fg = defgc->fg; bg = defgc->bg; attr = defgc->attr; + flags &= ~(GRID_FLAG_FG256|GRID_FLAG_BG256); + flags |= + defgc->flags & (GRID_FLAG_FG256|GRID_FLAG_BG256); } else if (end > 3 && strncasecmp(tmp + 1, "g=", 2) == 0) { if ((val = colour_fromstring(tmp + 3)) == -1) return; @@ -335,8 +338,11 @@ screen_write_parsestyle( } else flags &= ~GRID_FLAG_FG256; fg = val; - } else + } else { fg = defgc->fg; + flags &= ~GRID_FLAG_FG256; + flags |= defgc->flags & GRID_FLAG_FG256; + } } else if (*in == 'b' || *in == 'B') { if (val != 8) { if (val & 0x100) { @@ -345,8 +351,11 @@ screen_write_parsestyle( } else flags &= ~GRID_FLAG_BG256; bg = val; - } else + } else { bg = defgc->bg; + flags &= ~GRID_FLAG_BG256; + flags |= defgc->flags & GRID_FLAG_BG256; + } } else return; } else if (end > 2 && strncasecmp(tmp, "no", 2) == 0) { |