[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] curses: fix garbling when chtype != long
From: |
Devin J. Pohly |
Subject: |
[Qemu-devel] [PATCH] curses: fix garbling when chtype != long |
Date: |
Wed, 7 Sep 2011 15:44:36 -0400 |
From: "Devin J. Pohly" <address@hidden>
Qemu currently assumes that chtype is typedef'd to unsigned long, but
this is not necessarily the case (ncurses, for instance, can configure
this at build-time). This patch uses the predefined chtype if qemu is
configured for curses support and falls back to unsigned long otherwise.
Fixes bug 568614.
Signed-off-by: Devin J. Pohly <address@hidden>
---
console.c | 2 ++
console.h | 5 +++++
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/console.c b/console.c
index 500b3fb..5c7a93b 100644
--- a/console.c
+++ b/console.c
@@ -343,6 +343,7 @@ static const uint32_t dmask4[4] = {
static uint32_t color_table[2][8];
+#ifndef CONFIG_CURSES
enum color_names {
COLOR_BLACK = 0,
COLOR_RED = 1,
@@ -353,6 +354,7 @@ enum color_names {
COLOR_CYAN = 6,
COLOR_WHITE = 7
};
+#endif
static const uint32_t color_table_rgb[2][8] = {
{ /* dark */
diff --git a/console.h b/console.h
index 67d1373..9c1487e 100644
--- a/console.h
+++ b/console.h
@@ -328,7 +328,12 @@ static inline int ds_get_bytes_per_pixel(DisplayState *ds)
return ds->surface->pf.bytes_per_pixel;
}
+#ifdef CONFIG_CURSES
+#include <curses.h>
+typedef chtype console_ch_t;
+#else
typedef unsigned long console_ch_t;
+#endif
static inline void console_write_ch(console_ch_t *dest, uint32_t ch)
{
if (!(ch & 0xff))
--
1.7.6.1
- [Qemu-devel] [PATCH] curses: fix garbling when chtype != long,
Devin J. Pohly <=