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