summaryrefslogtreecommitdiff
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)
downloadqemu-3cded5400925452fcd1adca9109a5d30a92b4dac.tar.gz
qemu-3cded5400925452fcd1adca9109a5d30a92b4dac.tar.bz2
qemu-3cded5400925452fcd1adca9109a5d30a92b4dac.zip
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 6d9321584b..ab1f044486 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 */