Commit 3cded5400925452fcd1adca9109a5d30a92b4dac
1 parent
ceb42de8
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
Showing
1 changed file
with
1 additions
and
1 deletions
vnc.c
... | ... | @@ -1598,7 +1598,7 @@ static void pixel_format_message (VncState *vs) { |
1598 | 1598 | else if (vs->ds->surface->pf.bits_per_pixel == 8) |
1599 | 1599 | vs->send_hextile_tile = send_hextile_tile_8; |
1600 | 1600 | vs->clientds = *(vs->ds->surface); |
1601 | - vs->clientds.flags |= ~QEMU_ALLOCATED_FLAG; | |
1601 | + vs->clientds.flags &= ~QEMU_ALLOCATED_FLAG; | |
1602 | 1602 | vs->write_pixels = vnc_write_pixels_copy; |
1603 | 1603 | |
1604 | 1604 | vnc_write(vs, pad, 3); /* padding */ | ... | ... |