|
|
9ae3a8 |
From b01048102e5cc91d484d23531799a130a49d723a Mon Sep 17 00:00:00 2001
|
|
|
9ae3a8 |
From: Tarun Gupta <tgupta@redhat.com>
|
|
|
9ae3a8 |
Date: Wed, 20 Jun 2018 18:54:16 +0200
|
|
|
9ae3a8 |
Subject: [PATCH 08/17] spice: fix simple display on bigendian hosts
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
RH-Author: Tarun Gupta <tgupta@redhat.com>
|
|
|
9ae3a8 |
Message-id: <1529520865-18127-3-git-send-email-tgupta@redhat.com>
|
|
|
9ae3a8 |
Patchwork-id: 80907
|
|
|
9ae3a8 |
O-Subject: [RHEL7.6 qemu-kvm PATCH v3 02/11] spice: fix simple display on bigendian hosts
|
|
|
9ae3a8 |
Bugzilla: 1555246
|
|
|
9ae3a8 |
RH-Acked-by: Alex Williamson <alex.williamson@redhat.com>
|
|
|
9ae3a8 |
RH-Acked-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
|
9ae3a8 |
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
Denis Kirjanov is busy getting spice run on ppc64 and trapped into this
|
|
|
9ae3a8 |
one. Spice wire format is little endian, so we have to explicitly say
|
|
|
9ae3a8 |
we want little endian when letting pixman convert the data for us.
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
Reported-by: Denis Kirjanov <kirjanov@gmail.com>
|
|
|
9ae3a8 |
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
(cherry picked from c1d37cd353be3ea4c5773fc227ba8459c1f20470)
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
|
|
|
9ae3a8 |
---
|
|
|
9ae3a8 |
include/ui/qemu-pixman.h | 2 ++
|
|
|
9ae3a8 |
ui/spice-display.c | 2 +-
|
|
|
9ae3a8 |
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
diff --git a/include/ui/qemu-pixman.h b/include/ui/qemu-pixman.h
|
|
|
9ae3a8 |
index ba970f8..500725c 100644
|
|
|
9ae3a8 |
--- a/include/ui/qemu-pixman.h
|
|
|
9ae3a8 |
+++ b/include/ui/qemu-pixman.h
|
|
|
9ae3a8 |
@@ -27,8 +27,10 @@
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
#ifdef HOST_WORDS_BIGENDIAN
|
|
|
9ae3a8 |
# define PIXMAN_BE_r8g8b8 PIXMAN_r8g8b8
|
|
|
9ae3a8 |
+# define PIXMAN_LE_x8r8g8b8 PIXMAN_b8g8r8x8
|
|
|
9ae3a8 |
#else
|
|
|
9ae3a8 |
# define PIXMAN_BE_r8g8b8 PIXMAN_b8g8r8
|
|
|
9ae3a8 |
+# define PIXMAN_LE_x8r8g8b8 PIXMAN_x8r8g8b8
|
|
|
9ae3a8 |
#endif
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
/* -------------------------------------------------------------------- */
|
|
|
9ae3a8 |
diff --git a/ui/spice-display.c b/ui/spice-display.c
|
|
|
9ae3a8 |
index e2c24a9..8b73e5a 100644
|
|
|
9ae3a8 |
--- a/ui/spice-display.c
|
|
|
9ae3a8 |
+++ b/ui/spice-display.c
|
|
|
9ae3a8 |
@@ -178,7 +178,7 @@ static void qemu_spice_create_one_update(SimpleSpiceDisplay *ssd,
|
|
|
9ae3a8 |
image->bitmap.palette = 0;
|
|
|
9ae3a8 |
image->bitmap.format = SPICE_BITMAP_FMT_32BIT;
|
|
|
9ae3a8 |
|
|
|
9ae3a8 |
- dest = pixman_image_create_bits(PIXMAN_x8r8g8b8, bw, bh,
|
|
|
9ae3a8 |
+ dest = pixman_image_create_bits(PIXMAN_LE_x8r8g8b8, bw, bh,
|
|
|
9ae3a8 |
(void *)update->bitmap, bw * 4);
|
|
|
9ae3a8 |
pixman_image_composite(PIXMAN_OP_SRC, ssd->surface, NULL, ssd->mirror,
|
|
|
9ae3a8 |
rect->left, rect->top, 0, 0,
|
|
|
9ae3a8 |
--
|
|
|
9ae3a8 |
1.8.3.1
|
|
|
9ae3a8 |
|