summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2009-04-07 19:57:09 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2009-04-07 19:57:09 +0000
commit3cded5400925452fcd1adca9109a5d30a92b4dac (patch)
treef889c2f80609fcc0c4b37cf80a8dd27fd4e8f2d4
parentceb42de899e068d10f104d570c3fb3b36ec8e8d6 (diff)
downloadhqemu-3cded5400925452fcd1adca9109a5d30a92b4dac.zip
hqemu-3cded5400925452fcd1adca9109a5d30a92b4dac.tar.gz
vnc: Fix incorrect attempt to clear a flag
In vnc.c in pixel_format_message, the code tries to clear the QEMU_ALLOCATED_FLAG from the client display surface, however it uses the wrong operator and ends up enabling all other flags. Most notably this enables the big endian flag and causes some chaos. Signed-off-by: Brian Kress <kressb@moose.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7022 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--vnc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/vnc.c b/vnc.c
index 6d93215..ab1f044 100644
--- a/vnc.c
+++ b/vnc.c
@@ -1598,7 +1598,7 @@ static void pixel_format_message (VncState *vs) {
else if (vs->ds->surface->pf.bits_per_pixel == 8)
vs->send_hextile_tile = send_hextile_tile_8;
vs->clientds = *(vs->ds->surface);
- vs->clientds.flags |= ~QEMU_ALLOCATED_FLAG;
+ vs->clientds.flags &= ~QEMU_ALLOCATED_FLAG;
vs->write_pixels = vnc_write_pixels_copy;
vnc_write(vs, pad, 3); /* padding */
OpenPOWER on IntegriCloud