Commit 3cded540 authored by Aurelien Jarno's avatar Aurelien Jarno
Browse files

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: default avatarBrian Kress <kressb@moose.net>
Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7022 c046a42c-6fe2-441c-8c8c-71466251a162
parent ceb42de8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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 */