qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] vnc: hextile: do not generate ForegroundSpecified a


From: Anthony Liguori
Subject: [Qemu-devel] [PATCH] vnc: hextile: do not generate ForegroundSpecified and SubrectsColoured tiles
Date: Mon, 14 Dec 2009 14:21:41 -0600

This violates the RFB specification (section 6.6.4).  It happens to work with
most clients but it's still wrong.

Reported-by: Yaniv Kaul <address@hidden>
Signed-off-by: Anthony Liguori <address@hidden>
---
 vnchextile.h |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/vnchextile.h b/vnchextile.h
index c96ede3..432ed89 100644
--- a/vnchextile.h
+++ b/vnchextile.h
@@ -73,7 +73,7 @@ static void CONCAT(send_hextile_tile_, NAME)(VncState *vs,
        *last_bg = bg;
     }
 
-    if (!*has_fg || *last_fg != fg) {
+    if (n_colors < 3 && (!*has_fg || *last_fg != fg)) {
        flags |= 0x04;
        *has_fg = 1;
        *last_fg = fg;
@@ -165,8 +165,6 @@ static void CONCAT(send_hextile_tile_, NAME)(VncState *vs,
            irow += ds_get_linesize(vs->ds) / sizeof(pixel_t);
        }
 
-       /* A SubrectsColoured subtile invalidates the foreground color */
-       *has_fg = 0;
        if (n_data > (w * h * sizeof(pixel_t))) {
            n_colors = 4;
            flags = 0x01;
-- 
1.6.2.5





reply via email to

[Prev in Thread] Current Thread [Next in Thread]