From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>,
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Subject: [Qemu-devel] [PULL 1/6] ui/curses: Fix monitor color with -curses when 256 colors
Date: Tue, 3 Nov 2015 11:01:26 +0100 [thread overview]
Message-ID: <1446544891-3600-2-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1446544891-3600-1-git-send-email-kraxel@redhat.com>
From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
If TERM=xterm-256color, COLOR_PAIRS==256 and monitor passes chtype
like 0x74xx. Then, the code uses uninitialized color pair. As result,
monitor uses black for both of fg and bg color, i.e. terminal is
filled by black.
To fix, this initialize above than 64 with default color (fg=white,bg=black).
FIXME: on 256 color, curses may be possible better vga color emulation.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
ui/curses.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/ui/curses.c b/ui/curses.c
index 8edb038..35edd5e 100644
--- a/ui/curses.c
+++ b/ui/curses.c
@@ -341,8 +341,13 @@ static void curses_setup(void)
nodelay(stdscr, TRUE); nonl(); keypad(stdscr, TRUE);
start_color(); raw(); scrollok(stdscr, FALSE);
- for (i = 0; i < 64; i ++)
+ for (i = 0; i < 64; i++) {
init_pair(i, colour_default[i & 7], colour_default[i >> 3]);
+ }
+ /* Set default color for more than 64. (monitor uses 0x74xx for example) */
+ for (i = 64; i < COLOR_PAIRS; i++) {
+ init_pair(i, COLOR_WHITE, COLOR_BLACK);
+ }
}
static void curses_keyboard_setup(void)
--
1.8.3.1
next prev parent reply other threads:[~2015-11-03 10:01 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-03 10:01 [Qemu-devel] [PULL 0/6] ui patch queue Gerd Hoffmann
2015-11-03 10:01 ` Gerd Hoffmann [this message]
2015-11-03 10:01 ` [Qemu-devel] [PULL 2/6] ui/curses: Support line graphics chars on -curses mode Gerd Hoffmann
2015-11-03 10:01 ` [Qemu-devel] [PULL 3/6] ui/curses: Fix pageup/pagedown on -curses Gerd Hoffmann
2015-11-03 10:01 ` [Qemu-devel] [PULL 4/6] ui/opengl: Reduce build required libraries for opengl Gerd Hoffmann
2015-11-03 10:01 ` [Qemu-devel] [PULL 5/6] vnc: allow fall back to RAW encoding Gerd Hoffmann
2015-11-03 10:01 ` [Qemu-devel] [PULL 6/6] vnc: fix bug: vnc server can't start when 'to' is specified Gerd Hoffmann
2015-11-05 8:21 ` Markus Armbruster
2015-11-03 11:17 ` [Qemu-devel] [PULL 0/6] ui patch queue Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1446544891-3600-2-git-send-email-kraxel@redhat.com \
--to=kraxel@redhat.com \
--cc=hirofumi@mail.parknet.co.jp \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).