ui/vnc.c: replace big endian flag with byte order value

It will make it easier to do certain comparisons in future if we
store G_BIG_ENDIAN/G_LITTLE_ENDIAN directly, instead of a boolean
flag, as we can then compare directly to the G_BYTE_ORDER constant.

Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2025-01-27 18:45:47 +00:00
parent f0737158b4
commit 7ed96710e8
5 changed files with 7 additions and 7 deletions

View file

@ -150,7 +150,7 @@ tight_detect_smooth_image24(VncState *vs, int w, int h)
* If client is big-endian, color samples begin from the second * If client is big-endian, color samples begin from the second
* byte (offset 1) of a 32-bit pixel value. * byte (offset 1) of a 32-bit pixel value.
*/ */
off = vs->client_be; off = vs->client_endian == G_BIG_ENDIAN ? 1 : 0;
memset(stats, 0, sizeof (stats)); memset(stats, 0, sizeof (stats));

View file

@ -255,7 +255,7 @@ static void zrle_write_u8(VncState *vs, uint8_t value)
static int zrle_send_framebuffer_update(VncState *vs, int x, int y, static int zrle_send_framebuffer_update(VncState *vs, int x, int y,
int w, int h) int w, int h)
{ {
bool be = vs->client_be; bool be = vs->client_endian == G_BIG_ENDIAN;
size_t bytes; size_t bytes;
int zywrle_level; int zywrle_level;

View file

@ -188,7 +188,7 @@ static void vnc_async_encoding_start(VncState *orig, VncState *local)
local->lossy_rect = orig->lossy_rect; local->lossy_rect = orig->lossy_rect;
local->write_pixels = orig->write_pixels; local->write_pixels = orig->write_pixels;
local->client_pf = orig->client_pf; local->client_pf = orig->client_pf;
local->client_be = orig->client_be; local->client_endian = orig->client_endian;
local->tight = orig->tight; local->tight = orig->tight;
local->zlib = orig->zlib; local->zlib = orig->zlib;
local->hextile = orig->hextile; local->hextile = orig->hextile;

View file

@ -891,7 +891,7 @@ void vnc_convert_pixel(VncState *vs, uint8_t *buf, uint32_t v)
buf[0] = v; buf[0] = v;
break; break;
case 2: case 2:
if (vs->client_be) { if (vs->client_endian == G_BIG_ENDIAN) {
buf[0] = v >> 8; buf[0] = v >> 8;
buf[1] = v; buf[1] = v;
} else { } else {
@ -901,7 +901,7 @@ void vnc_convert_pixel(VncState *vs, uint8_t *buf, uint32_t v)
break; break;
default: default:
case 4: case 4:
if (vs->client_be) { if (vs->client_endian == G_BIG_ENDIAN) {
buf[0] = v >> 24; buf[0] = v >> 24;
buf[1] = v >> 16; buf[1] = v >> 16;
buf[2] = v >> 8; buf[2] = v >> 8;
@ -2312,7 +2312,7 @@ static void set_pixel_format(VncState *vs, int bits_per_pixel,
vs->client_pf.bits_per_pixel = bits_per_pixel; vs->client_pf.bits_per_pixel = bits_per_pixel;
vs->client_pf.bytes_per_pixel = bits_per_pixel / 8; vs->client_pf.bytes_per_pixel = bits_per_pixel / 8;
vs->client_pf.depth = bits_per_pixel == 32 ? 24 : bits_per_pixel; vs->client_pf.depth = bits_per_pixel == 32 ? 24 : bits_per_pixel;
vs->client_be = big_endian_flag; vs->client_endian = big_endian_flag ? G_BIG_ENDIAN : G_LITTLE_ENDIAN;
if (!true_color_flag) { if (!true_color_flag) {
send_color_map(vs); send_color_map(vs);

View file

@ -323,7 +323,7 @@ struct VncState
VncWritePixels *write_pixels; VncWritePixels *write_pixels;
PixelFormat client_pf; PixelFormat client_pf;
pixman_format_code_t client_format; pixman_format_code_t client_format;
bool client_be; int client_endian; /* G_LITTLE_ENDIAN or G_BIG_ENDIAN */
CaptureVoiceOut *audio_cap; CaptureVoiceOut *audio_cap;
struct audsettings as; struct audsettings as;